以下内容基于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>