以下是场景:
index.php
文件index.php
中包含的某些文件位于includes
文件夹中。submit.php
)位于表单提交操作的根文件夹中。我想通过htaccess限制用户直接访问includes
文件夹中的文件。也适用于submit.php
。但include将适用于index.php
文件。例如,如果用户输入www.domain.com/includes/somepage.php
,它就会限制它(可能会被重定向到错误页面)。
发布于 2012-02-15 02:26:57
我只需将includes
文件夹移出web根目录,但如果您想阻止对整个includes
文件夹的直接访问,您可以在该文件夹中放置一个仅包含以下内容的.htaccess
文件:
deny from all
这样你就无法打开该文件夹中的任何文件,但你可以将它们包含在php中而不会出现任何问题。
发布于 2012-02-15 03:18:48
这是一个纯基于mod_rewrite
的解决方案:
RewriteRule ^(includes/|submit\.php) - [F,L,NC]
如果URI包含/includes/
或/submit.php
,这将显示要使用的禁止错误
发布于 2015-09-09 20:30:09
可以使用files指令并禁止访问所有文件,然后再次使用它来设置可访问的文件:
<Files ~ "^.*">
Deny from all
</Files>
<Files ~ "^index\.php|css|js|.*\.png|.*\.jpg|.*\.gif">
Allow from all
</Files>
https://stackoverflow.com/questions/9282124
复制相似问题