1、404跳转:
<IfModule dir_module>
DirectoryIndex index.php index.html /error.php
</IfModule>
#/error.php是apache的根目录
2、apache配置段:
(1)目录权限限制
Alias /dir/ "/var/www/html" #虚拟目录即访问dir的时候跳转到/var/www/html目录
<Directory /var/www/html/> #目录访问权限 ,或者<Directory /var/*/html/> *表示通配符
Options Indexes FollowSymLinks #允许目录索引,支持软连接
Order Allow,Deny #先允许后拒绝
Deny from 192.168.1.111 #拒绝访问该目录
Allow from all #允许访问该目录
AllowOverride All #开启.htaccess(默认是开启的),把目录配置权限交给用户,上面的配置内容不用写
</Directory>
(2)文件权限限制(Files可以嵌套到Directory配置段里,即限制某个目录下的某个文件不能访问)
<Files "demo.html">
Order Deny,Allow
Deny from all
</Files>
<FilesMatch \.(gif|jpe?g|png)$> #正则模式
Order Deny,Allow
Deny from all
</FilesMatch>
(3)以pri开头的网络地址
<Location '/pri'>
......
</Location>
3、.htaccess(不建议使用,比较浪费apache资源)
Options Indexs FollowSymLinks #允许目录索引,支持软连接
Order Allow,Deny #先允许后拒绝
Allow from all #允许所有访问
4、虚拟主机的配置(重点):
#
# 管理员邮箱
# 网站根目录
# Directory限制该目录的权限
# 绑定域名
# 绑定其他域名
# 错误日志
# 正常访问日志
#
<VirtualHost *:80>
ServerAdmin admin@php.com
DocumentRoot "/home/php5"
<Directory "/home/php5">
Options Indexes FollowSymLinks
AllowOverride All
Order Allow,Deny
Allow from all
</Directory>
ServerName www.php.com
ServerAlias cs.php.com
ErrorLog "/home/php5/logs/error_log"
CustomLog "/home/php5/logs/access_log"
</VirtualHost>
# 禁止所有以logs开头的文件都禁止访问
<Location "/logs">
Order Deny,Allow
Deny from all
</Location>