【问题标题】:Protecting folder and its files保护文件夹及其文件
【发布时间】:2012-02-01 16:03:54
【问题描述】:

我希望保护包含 CMS 核心文件的文件夹及其子文件夹和文件不通过网络访问,我尝试使用 .htaccess 文件:

order deny,allow
deny from all

我的问题是我可以保护该文件夹,但该文件夹或其子文件夹中的某些脚本无法正常工作。

我也试过这个:

order deny,allow
deny from all
allow from 127.0.0.1
allow from 76.xx.xx.xx

在这种情况下,76.xx.xx.xx 是站点的静态 IP。 有什么方法可以阻止访问该文件夹中的文件,但仍然可以正常工作吗?

另一个问题。

我希望保护我的网站免受黑客攻击。那么,有什么方法可以防止在我的脚本/文件中注入恶意文件和代码和/或阻止我的站点从其他站点、主机执行文件,从而只允许使用本地文件。

我更喜欢 .htaccess 文件,但如果需要,如果需要编辑其他文件,我可以访问 WHM(但在这种情况下,我需要分步指南)。我正在使用 Cent-OS 5 系统的 Linux VPS 上运行站点。

【问题讨论】:

  • 您使用哪种 CMS?你在说哪些文件?是否有机会修改 CMS 以实现您的目标?
  • 我使用来自 (www.zenphoto.org) 的 zenphoto

标签: .htaccess security


【解决方案1】:

执行此操作的通常方法是将可访问的文件放在 apache 可访问的目录中,但所有其余文件都放在 Apache 之外的目录中。例如:

/usr/
  local/
    mycms/
      public/
      lib/
/var/
  www/
    mycms -> softlink to /usr/local/mycms/public

或者更好的是,让 mycms 在 Apache 配置中成为别名,指向公共目录。这样,应该可以访问的文件是,那些不应该访问的文件,你仍然可以简单地通过../lib/等引用所有其他文件。

我知道这并不能真正从字面上回答您的问题,如果 CMS 目录结构不受您的控制,这可能不是最好的方法。

另一种方法是通过重写 - 只需将 所有 对 CMS 目录的请求(CMS 的入口脚本除外)重写为入口脚本的请求。

【讨论】:

    猜你喜欢
    • 2014-12-16
    • 1970-01-01
    • 1970-01-01
    • 2019-01-02
    • 1970-01-01
    • 2016-07-24
    • 2020-09-29
    • 1970-01-01
    相关资源
    最近更新 更多