以下内容基于httpd-2.4版本进行;
—————————————-
虚拟主机可以放置在如下目录中:
/etc/httpd/conf.d/*.conf
有3种方式实现虚拟主机:
基于IP地址;基于端口;基于域名;
备注1:
httpd-2.2版本如果要启用虚拟主机,需要先禁用中心主机;
禁用中心主机方法:注释中心主机的”DocumentRoot”即可;
基于IP的虚拟主机:
<VirtualHost 192.168.206.66:80>
ServerName www.66.com
DocumentRoot "/data/web/66"
<Directory "/data/web/66">
Options None
AllowOverride None
Require all granted
</Directory>
ErrorLog "logs/error_66_log"
LogLevel warn
CustomLog "logs/access_66_log" combined
</VirtualHost>
基于端口的虚拟主机:
Listen 8080
<VirtualHost 192.168.206.66:8080>
ServerName www.66.com
DocumentRoot "/data/web/66"
<Directory "/data/web/66">
Options None
AllowOverride None
Require all granted
</Directory>
ErrorLog "logs/error_66_log"
LogLevel warn
CustomLog "logs/access_66_log" combined
</VirtualHost>
基于域名的虚拟主机:
<VirtualHost *:80>
ServerName www.66.com
DocumentRoot "/data/web/66"
<Directory "/data/web/66">
Options None
AllowOverride None
Require all granted
</Directory>
ErrorLog "logs/error_66_log"
LogLevel warn
CustomLog "logs/access_66_log" combined
</VirtualHost>
备注2:
httpd-2.2版本,基于域名的虚拟主机在配置时,配置文件首行要加入如下信息:
NameVirtualHost IP_ADDR:PORT
***************************
status页面:
Provides information on server activity and performance;提供有关服务器活动和性能的信息;
查看status模块是否已经被加载:
~]# httpd -M | grep status
LoadModule status_module modules/mod_status.so
根据httpd版本的不同,把下面内容添加至’httpd.conf’主配置文件中;
httpd-2.2:
<Location "/server-status">
SetHandler server-status
Order allow,deny
Allow from 192.168.206.88
</Location>
httpd-2.4:
<Location "/server-status">
SetHandler server-status
<RequireAll>
Require ip 192.168.206.88
</RequireAll>
</Location>
也可以把上面内容定义到虚拟主机中:
<VirtualHost *:80>
ServerName www.66.com
DocumentRoot "/data/web/66"
<Directory "/data/web/66">
Options None
AllowOverride None
Require all granted
</Directory>
ErrorLog "logs/error_66_log"
LogLevel warn
CustomLog "logs/access_66_log" combined
<Location "/server-status">
SetHandler server-status
<RequireAll>
Require ip 192.168.206.88
</RequireAll>
</Location>
</VirtualHost>