应用场景:
php程序部署服务器后,url 访问localhost可以正常访问到wampserver的www目录下的文件 这样不够安全。禁止访问
解决:
1.修改wamp的默认程序目录
打开httpd.conf文件,Ctrl+f搜索documentroot和directory,修改路径,保存,重启服务(修改配置文件后都需重启才能生效)
参考地址:https://jingyan.baidu.com/article/c85b7a64640ebe003aac9551.html
2.程序目录分为多层 没个目录下都要禁止显示文件目录
1)修改目录配置:
<Directory "D:/Apache/blog.phpha.com">
Options Indexes FollowSymLinks # 修改为: Options FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
2)修改Apache配置文件[httpd.conf]
<VirtualHost *>
<Directory "../vhosts/blog.phpha.com">
Options -Indexes FollowSymLinks # 修改为 -Indexes 即可
</Directory>
ServerAdmin mail@jb51.com
DocumentRoot "../vhosts/blog.phpha.com"
ServerName shopex:80
ServerAlias blog.phpha.com
ErrorLog logs/blog.phpha.com-error_log
</VirtualHost>
3)通过.htaccess文件
<Files *>
Options -Indexes
</Files>
设置完成后 再访问层级目录 提示没有权限 但是这样不够友好
通过.htaccess文件来解决(在所需要的目录下放置)
参考地址:http://www.jb51.net/article/46767.htm
Options -Indexes
RewriteEngine On
# deal with admin first
RewriteCond %{REQUEST_URI} ^/
RewriteRule ^.*$ backend/web/index.php [L]
^/:根目录
如果访问根目录 则跳转到 backend/web/index.php
这里将禁止目录显示和 目录权限不够 结合到一起了。