【发布时间】:2012-09-02 02:27:19
【问题描述】:
我有一个名为“模板”的目录。有些 php 文件我不希望人们直接访问它们,所以我在 htaccess 中写了这个:
<Files *.php>
Order Deny,Allow
Deny from all
</Files>
还有一些文件我希望人们可以直接访问它们,这些文件被命名为:
switcher.php、switcher1.php、switcher2.php、switcher3.php、switcher4.php、switcher5.php
位于template/styles/theme/
所以我在那个位置创建了一个新的 htaccess 文件并写了这个:
<FilesMatch "^switcher[1-5]?\.php$">
Order Allow,Deny
Allow from all
</FilesMatch>
这在我的本地主机上运行良好,但是当我在 cPanel 共享主机上上传脚本时,它在那里不起作用。拒绝访问所有 php 文件。
我可以做些什么来解决这个问题?
我不能要求主机进行更改,因为这个脚本应该安装在至少 30 台不同配置的共享主机上!
【问题讨论】:
-
不要这样做。如果您不想允许访问某些文件,则根本不要将它们放入文档根目录。无法访问不存在的内容...当然,由于 PHP 不受网络服务器对文件访问的限制,它仍然可以包含/要求所有它想要的文件 - 您只需要在包含/需要指令。
标签: php apache .htaccess subdirectory