本文共 3617 字,大约阅读时间需要 12 分钟。
在实际应用中,最常用的虚拟主机类型是基于域名的配置。这种方式下,多个虚拟站点共享相同的IP地址,但各自拥有不同的域名。服务器通过域名来区分不同的站点。
/etc/hosts文件中添加域名解析:echo "192.168.249.30 www.lisi.com" >> /etc/hostsecho "192.168.249.30 www.zhangsan.com" >> /etc/hosts
ServerAdmin webmaster@dummy-host.example.com DocumentRoot "/var/www/html/lisi" ServerName www.lisi.com ServerAlias www.dummy-host.example.com ErrorLog "logs/lisi.com-error_log" CustomLog "logs/lisi.com-access_log" common ServerAdmin webmaster@dummy-host2.example.com DocumentRoot "/var/www/html/zhangsan" ServerName www.zhangsan.com ServerAlias www.dummy-host2.example.com ErrorLog "logs/zhangsan.com-error_log" CustomLog "logs/zhangsan.com-access_log" common
Options None AllowOverride None Require all granted
这种方式需要为每个虚拟主机分配不同的IP地址,通常用于测试或特定场景。由于IP地址的唯一性,通常不推荐用于生产环境。
ServerAdmin webmaster@dummy-host.example.com DocumentRoot "/var/www/html/lisi" ServerName www.lisi.com ServerAlias www.dummy-host.example.com ErrorLog "logs/lisi.com-error_log" CustomLog "logs/lisi.com-access_log" common ServerAdmin webmaster@dummy-host2.example.com DocumentRoot "/var/www/html/zhangsan" ServerName www.zhangsan.com ServerAlias www.dummy-host2.example.com ErrorLog "logs/zhangsan.com-error_log" CustomLog "logs/zhangsan.com-access_log" common
Listen 192.168.249.100:80
这种方式通过不同的端口号来区分虚拟站点,用户需要在浏览时指定端口号。
ServerAdmin webmaster@dummy-host.example.com DocumentRoot "/var/www/html/lisi" ServerName www.lisi.com ServerAlias www.dummy-host.example.com ErrorLog "logs/lisi.com-error_log" CustomLog "logs/lisi.com-access_log" common ServerAdmin webmaster@dummy-host2.example.com DocumentRoot "/var/www/html/zhangsan" ServerName www.zhangsan.com ServerAlias www.dummy-host2.example.com ErrorLog "logs/zhangsan.com-error_log" CustomLog "logs/zhangsan.com-access_log" common
Listen 192.168.249.30:80Listen 192.168.249.30:8080
cd /opttar zxvf awstats-7.6.tar.gzmv /opt/awstats-7.6 /usr/local/awstats
cd /usr/local/awstats/tools./awstats_configure.pl
LoadModule cgid_module modules/mod_cgid.soLoadModule cgi_module modules/mod_cgi.so
Options None AllowOverride None Require all granted
vim /etc/awstats/awstats.www.lisi.com.conf
LogFile="/usr/local/httpd/logs/access_log"DirData="/var/lib/awstats"
crontab -e*/5 * * * * /usr/local/awstats/tools/awstats_updateall.pl now
systemctl restart httpdsystemctl start crond
http://www.lisi.com/awstats/awstats.pl
KeepAlive onMaxKeepAliveRequests 100KeepAliveTimeout 5
cd /usr/local/httpd/bin./htpasswd -c /usr/local/httpd/user zhangsan./htpasswd /usr/local/httpd/user lisi
AuthName "请输入用户名和密码" AuthType Basic AuthUserFile "/usr/local/httpd/user" Require valid-user
ErrorLog "| /usr/local/bin/rotatelogs -l /var/log/httpd/error_%Y%m%d.log 86400"CustomLog "| /usr/local/bin/rotatelogs -l /var/log/httpd/access_%Y%m%d.log 86400" combined
通过以上配置,您可以轻松构建多个虚拟Web主机,并使用AwStats进行日志分析和统计。这种配置方式既高效又灵活,适合开发、测试和生产环境。
转载地址:http://cvis.baihongyu.com/