如何保护inc文件中的文件扩展名?

时间:2012-04-03 01:09:09

标签: php drupal

从书中

  

一个常见的约定是对所有包含文件使用.inc。然而,   这可能会使您面临重大安全风险,因为大多数情况下   服务器将.inc文件视为纯文本。让我们说一个包含文件   包含数据库的用户名和密码,并存储   在您网站的根目录中带有.inc文件扩展名的文件   夹。任何发现文件名称的人都可以输入   浏览器地址栏中的URL,并且必须显示浏览器   你所有的秘密细节!

但我发现程序中的.inc文件中有一些include个文件,例如:drupal和其他一些程序,为什么?它们如何防止从中访问inc文件浏览器?

4 个答案:

答案 0 :(得分:6)

在Drupal的案例中,保护位于Drupal的DocumentRoot中的.htaccess文件中:

# Protect files and directories from prying eyes.
<FilesMatch "\.(engine|inc|info|install|make|module|profile|test|po|sh|.*sql|theme|tpl(\.php)?|xtmpl)$|^(\..*|Entries.*|Repository|Root|Tag|Template)$">
  Order allow,deny
</FilesMatch>

答案 1 :(得分:1)

.htaccess可以设置为不允许Web用户请求资源。

See this link

特别是阅读部分......

<Files ~ "\.(inc)$">
order allow,deny
deny from all
</Files>

答案 2 :(得分:0)

安全文件夹或虚拟目录应用程序将很容易解决此问题。要配置服务器问题,请检查:https://serverfault.com/

如果您尝试使用php解决此问题,那么 ioncube 或某种应用程序将解决它。

答案 3 :(得分:0)

通常,Web根目录是与应用程序本身不同的文件夹。因此,Web服务器不提供对应用程序源文件的访问,而只提供对具有样式,图像等的公共文件夹的访问。