Apache多站点配置也就是虚拟主机配置
虚拟主机 (Virtual Host) 是在同一台机器搭建属于不同域名或者基于不同 IP 的多个网站服务的技术. 可以为运行在同一物理机器上的各个网站指配不同的 IP 和端口, 也可让多个网站拥有不同的域名。
1.安装apache
#yum install -y httpd
2.准备本地域名解析
#vim /etc/hosts
127.0.0.1 server.example.com
127.0.0.1 wwww.example.com
测试能否联通
#ping wwww.example.com
#ping server.example.com
ps:若网络接口上绑定多个IP,把127.0.0.1换乘对应IP即可
3.网站文件存放的根目录
#mkdir /var/www/virt1
#mkdir /var/www/virt2
vim /var/www/virt1/index.html
<!DOCTYPE HTML>
<html>
<body>
<head>
<title>Hello world</title>
</head>
<p><b>Hello world!</b></p>
</body>
</html>
#cp /var/www/virt1/index.html /var/www/virt2
4..配置
#vim /etc/httpd/conf/httpd.conf
在结尾加入
NameVirtualHost *:80 #一定要打开
<VirtualHOST *:80>
ServerName server.example.com #是网站域名
DocumentRoot /var/www/virt1 #是网站文件存放的根目录
<Directory "/var/www/virt1">
order allow,deny
allow from localhost
allow from 127.0.0.1
allow from server.example.com
allow from 192.168.173.0/24
</Directory>
</VirtualHost>
<VirtualHost *:80>
ServerName wwww.example.com
DocumentRoot /var/www/virt2
<Directory "/var/www/virt2">
AllowOverride AuthConfig #加入网页认证机制
AuthType basic #认证类型
AuthName "Authentication Required"
AuthUserFile /var/www/virt2/.passwd #指定用户认证文件位置
Require valid-user
</Directory>
</VirtualHost>
Order定义处理Allow和Deny的顺序,Allow、Deny则针对名字或IP进行访问控制设置,缺省最后一个生效。
5.创建合法用户
#htppasswd -cm /var/www/virt2/.passwd test
#htpasswd -m /var/www/virt2/.passwd user
6.Selinux与iptables
#chcon –reference=/var/www/html /var/www/virt1
#chcon –reference=/var/www/html /var/www/virt2
#getsebool -a | grep http
iptables
#iptables -A INPUT -p tcp –dport 80 -j ACCEPT
#iptables -A OUTPUT -p tcp –sport 80 -j ACCEPT
7.验证
在浏览器里分别输入server.example.com和wwww.example.com
在输入wwww.example.com时需要验证: