Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/.htaccess/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/three.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 哪种方法更安全/更适合使用.htaccess阻止对子目录的访问?_Php_.htaccess_Url Redirection - Fatal编程技术网

Php 哪种方法更安全/更适合使用.htaccess阻止对子目录的访问?

Php 哪种方法更安全/更适合使用.htaccess阻止对子目录的访问?,php,.htaccess,url-redirection,Php,.htaccess,Url Redirection,我正试图使用.htaccess阻止外部访问我网站的/includes/目录,该目录仅包括处理PHP文件。下面的两种方法都“有效”,但我更喜欢后者,因为它不会给用户留下错误页面。有人能告诉我它是否不太安全吗 使用此选项是否更好: <Directory "/includes"> Deny from all </Directory> 还是其他更合适的方法 网站内容由index.php动态提供,因此/includes/文件夹中的文件需要通过php的include函数保持可访

我正试图使用
.htaccess
阻止外部访问我网站的
/includes/
目录,该目录仅包括处理
PHP
文件。下面的两种方法都“有效”,但我更喜欢后者,因为它不会给用户留下错误页面。有人能告诉我它是否不太安全吗

使用此选项是否更好:

<Directory "/includes">
  Deny from all
</Directory>
还是其他更合适的方法


网站内容由index.php动态提供,因此
/includes/
文件夹中的文件需要通过
php
的include函数保持可访问性

或者,您可以返回404,让人们认为includes目录根本不存在:

RewriteEngine On
RewriteRule ^includes/ - [L,R=404] 

点击您的/includes/目录的访问者应该得到一条错误消息。虽然现在我想,“RedirectMatch”否认了坏家伙的信息,这是好事。我倾向于同意,但是我想确保任何错误的链接不会用技术错误消息吓跑我的用户!这与
RewriteCond%{REQUEST\u FILENAME}-s[或]RewriteCond%{REQUEST\u FILENAME}-l[或]RewriteCond%{REQUEST\u FILENAME}-d RewriteRule^.*$-[NC,l]
ErrorDocument 404/404
结合使用,效果非常好。前者使存储在includes文件夹中的样式表保持工作状态,后者允许我指定一个自定义404页面(这是动态加载页面所必需的)。谢谢
RewriteEngine On
RewriteRule ^includes/ - [L,R=404]