一个http服务要配置多个站点,就需要用到虚拟机主机。
虚拟机主机一般有三类:1、基于域名 2、基于端口 3、基于ip
举例操作基于域名配置三个站点:
域名 站点目录
/val/html/www
blog.eejind.com /var/html/blog
bbs.eejind.com /var/html/bbs
1、创建站点目录
mkdir /var/html/{www,blog,bbs} -p
2、在每个目录下创建index.html文件。
touch /var/html/{www,blog,bbs}/index.html
每个文件中f对应分别添加内容, blog.eejind.com, bbs.eejind.com
for name in www blog bbs;do echo "http://$name.1111111111.com" > /var/html/$name/index.html;done
查看是否操作成功
3、编辑extra目录下的httpd-vhosts.conf
将对应的域名和站点信息按照模板添加
有一个小问题:可以看到日志后面写了一个CustomLog后面有一个common,他表示日志的格式是common的。如果想改为combine,可以修改。具体格式可以再httpd.conf中看到。
httpd.conf中定义i了2中日志格式:普通日志(common)和组合日志(combine)。
完成后需要注意的时,默认情况下,主配置文件httpd.conf是不包含扩展配置文件extra/httpd-vhosts.conf的。所以要去httpd.conf中修改下
4、修改httpd.conf,使得httpd-vhosts.conf被引用生效
扩展配置文件中的内容默认都不被主配置文件引用,如果想要被使用,则手动修改主配置文件,去掉对应的注释
同时,因为新增加了站点所以要再主配置文件中,配置新的站点信息
vi httpd.conf
保存后退出
重启服务bin/apachectl graceful
5、服务端已配置好。客户端访问的时候要再本地host做解析
6、检查解析后,是否能成功访问
在本地cmd窗口,ping
7、访问域名成功