时间:2020-03-10 09:53:34 | 栏目: | 点击:次
Apache默认在当前目录下没有index.html入口就会显示网站根目录,让网站目录文件都暴露在外面,是一件非常危险的事,例如:数据库密码泄露,隐藏页面暴露等严重安全问题!
本文将详细介绍如何操作禁止显示apache网站根目录。
进入apache的配置文件 httpd.conf 找到:
vim /etc/httpd/conf/httpd.confOptions Indexes FollowSymLinks
<Directory "/var/www/html"> #Options None #Options Indexes FollowSymLinks Options FollowSymLinks AllowOverride All Order allow,deny Allow from all </Directory>
<Files ~ ".inc$"> Order allow,deny Deny from all </Files>禁止访问某些指定的目录:(可以用 <DirectoryMatch>来进行正则匹配)
<Directory ~ "^/var/www/(.+/)*[0-9]{3}">
Order allow,deny
Deny from all
</Directory>
通过文件匹配来进行禁止,比如禁止所有针对图片的访问:
<FilesMatch .(?i:gif|jpeg|png)$> Order allow,deny Deny from all </FilesMatch>针对URL相对路径的禁止访问:
<Location /dir/> Order allow,deny Deny from all </Location>配置示例
<Directory "E:/Program Files/Apache Software Foundation/Apache2.2/htdocs"> # # Possible values for the Options directive are "None", "All", # or any combination of: # Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews # # Note that "MultiViews" must be named *explicitly* — "Options All" # doesn’t give it to you. # # The Options directive is both complicated and important. Please see # http://httpd.apache.org/docs/2.2/mod/core.html#options # for more information. # 就是这一行,只去掉indexes也可 #Options Indexes FollowSymLinks Options FollowSymLinks # # AllowOverride controls what directives may be placed in .htaccess files. # It can be "All", "None", or any combination of the keywords: # Options FileInfo AuthConfig Limit # AllowOverride None # # Controls who can get stuff from this server. # Order allow,deny Allow from all </Directory>