apache配置
apache配置
禁止访问目录
更改的是httpd.conf及vhost.conf文件。
下面是虚拟主机的配置,更改为Options +ExecCGI,注意+号与后面的单词没有空格,估计的意思是,增加上中个属性的配置。
<VirtualHost *:80>
ServerName zend.scc
DocumentRoot "D:\phpStudy\PHPTutorial\zend"
<Directory "D:\phpStudy\PHPTutorial\zend">
Options +Indexes +FollowSymLinks +ExecCGI
AllowOverride All
Order allow,deny
Allow from all
Require all granted
</Directory>
</VirtualHost>
<VirtualHost _default_:80>
DocumentRoot "D:\phpStudy\PHPTutorial\WWW"
<Directory "D:\phpStudy\PHPTutorial\WWW">
# 注意下面的是禁止目录访问,更改前后的对比。
#Options +Indexes +FollowSymLinks +ExecCGI
Options +ExecCGI
AllowOverride All
Order allow,deny
Allow from all
Require all granted
</Directory>
</VirtualHost>
httpd.conf中的配置
DocumentRoot "D:\phpStudy\PHPTutorial\WWW"
<Directory />
#Options +Indexes +FollowSymLinks +ExecCGI
Options +ExecCGI
AllowOverride All
Order allow,deny
Allow from all
Require all granted
</Directory>
备注:另外一种配置形式,缺少+FollowSymLinks,会导致服务直接无法访问。所以,修改要备份,便于快速还原。另外,线上的东西,最好不要随便动。
DocumentRoot "D:/ShineMDS/xampp/htdocs"
<Directory "D:/ShineMDS/xampp/htdocs">
#Options Indexes FollowSymLinks Includes ExecCGI
Options Includes ExecCGI
AllowOverride All
Order allow,deny
Allow from all
</Directory>
说明:关于禁止目录访问,在两个地方配置,如果其中之一设置了可以目录访问,那么整体就能目录访问,所以,要禁用掉目录访问的功能,需要在这两个地方同时改为禁止访问。
参数:
FollowSymLinks:就是允许你的网页文件夹下的链接文件链接到首页目录以外的文件。举例来说,如果你把首页目录设置为/var/www/html,那么你的网页程序最多只能访问到/var/www/html目录,上层目录是不可见的。但是你可以通过链接把文件链接到/var/www/html目录以外的文件以访问该文件,如果FollowSymLinks被设置的话