apache配置文件详解及虚拟主机的搭建

时间:2023-03-09 09:34:30
apache配置文件详解及虚拟主机的搭建

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>