hwhanwan 2014-05-26
apache上的虚拟主机分为:基于名称的虚拟主机 (每个IP多个站点)和基于IP的虚拟主机(每个IP一个站点)。这里使用基于名称的虚拟主机。
假设要设置的站点为:
blog.aaa.com
bbs.aaa.com
www.bbb.com
首先设置好域名A记录,
编辑/etc/httpd/conf/httpd.conf:
vim /etc/httpd/conf/httpd.conf
在配置文件最后加入:
# Listen for virtual host requests on all IP addresses
NameVirtualHost *:80<VirtualHost *:80>
DocumentRoot /home/blog.aaa
ServerName blog.aaa.com
ErrorLog logs/blog.aaa.com-error_log
CustomLog logs/blog.aaa.com-access_log common
</VirtualHost><VirtualHost *:80>
DocumentRoot /home/bbs.aaa
ServerName bbs.aaa.com
ErrorLog logs/bbs.aaa.com-error_log
CustomLog logs/bbs.aaa.com-access_log common
</VirtualHost><VirtualHost *:80>
DocumentRoot /home/bbb
ServerName www.bbb.com
ErrorLog logs/www.bbb.com-error_log
CustomLog logs/www.bbb.com-access_log common
</VirtualHost><VirtualHost *:80>
DocumentRoot /var/www/html
ServerName 1.1.1.1 //这里填VPS独立IP地址,这样可以保留apache原/var/www/html根目录,能直接IP访问,可以放个默认页面或探针。
</VirtualHost>
验证配置是否有语法错误:
/usr/sbin/httpd -S
没报错即可。
建立对应的目录:
mkdir /home/blog.aaa
mkdir /home/bbs.aaa
mkdir /home/bbb
重启Apache服务器使设置生效:
service httpd restart