apache 相关资料
一.限制列出目录下内容(目录下的文件没有被限制访问)默认情况下,Apache服务器会列出网站目录中的文件及子目录,这对于用于发布站点的服务器来说是很不安全的,所以需要禁用,修改httpd.conf配置文件中的对应设置即可。
问题的现象:
如果你的网站目录下有一个xxx的文件夹,如果xxx文件夹下没有默认页面(index.*等),当用户使用URL:http://你的网址/xxx/ 访问你的网站的话,Apache会把xxx文件夹里的内容全列出来
实例:(ubuntu 12.04 )
img1目录下面没有index.*等页面,所以访问此目录的时候会列出img1下所有图片等文件,这只需要在配置文件httpd.conf中加入限制即可。
sudo vim /etc/apache2/httpd.conf
OptionsFollowSymLinks MultiViews // Options中把 Indexes 这个关键字去掉!
AllowOverride None
Order Deny,Allow
Allow from all
在上面的Options中把Indexes这个关键字去掉即可;这个关键字会在没有默认页面情况下列出目录下的内容。
二.限制访问目录下的任何文件
Options FollowSymLinks MultiViews
AllowOverride None
Order deny,allow
deny from all
Allow from 本机内网ip
Allow from 本机外网ip
Allow from 1.1.1.1
Allow from 2.2.2.2
这样就做到只允许本机和1.1.1.1 和2.2.2.2 访问/home/web/abc/下的文件,一般要把本机的ip地址加到白名单里面哦,不然有可能自己都访问不了了。
三.虚拟主机配置(ubuntu)
ServerName www.abc.com
ServerAdmin webmaster@localhost
DocumentRoot "/home/web/www"
ErrorLog "/var/log/apache2/wwwerror.log"
CustomLog "/var/log/apache2/www.log" common
JkMountCopy On
四.完全卸载ubuntu上的apache2
1.安装apache2
安装命令:sudo apt-get install apache2
启动/停止/重启apache2: service apache2 start/stop/restart
2. 卸载apache2
之前卸载重新安装后找不到apache2.conf配置文件,测试使用一下方式卸载后可用。
(1) $ sudo apt-get --purge remove apache2
$ sudo apt-get --purge remove apache2.2-common
$ sudo apt-get autoremove
(2) (关键一步)找到没有删除掉的配置文件,一并删除
$ sudo find /etc -name "*apache*" -exec rm -rf {} \;
$ sudo rm -rf /var/www
五.apache2 检查语法
sudo apache2ctl configtest
页:
[1]