Apache中配置多主机多站点,能够经过两种方式实现php
- 将同一个域名的不一样端口映射到不一样的站点(虚拟主机)
- 将同一个端口映射成不一样的域名,不一样的域名映射到不一样的站点
两种方法能够同时存在,局域网经过 ip:端口的配置方法跟统一域名不一样端口的配置方法同样html
咱们只须要修改相应的配置文件便可。web
1、准备工做
一、修改系统 hosts文件
centos中hosts的文件路径: /etc/hostscentos
在这个文件中咱们加入以下两行代码:浏览器
在 127.0.0.1后面添加 www.liuyazhuang.com,www.lyz.com
这两行代码的意思是将www.liuyazhuang.com和www.lyz.com映射到本机的ip地址上。ide
二、准备两个站点 (ps:这两个站点能够放到任意的下面)
分别在测试
1> /var/www/myweb1,下面有个index.html文件.内容是"这是/var/www/myweb1"站点.spa
2> /usr/local/http2/htdocs/myweb2,下面有个index.html文件.内容是"这是/usr/local/http2/htdoces/myweb2"站点.(安装好LAMP后,默认的站点)htm
2、具体实现
咱们分别讲解两种不一样的实现方案blog
1)修改监听端口
在Apache的httpd.conf中,将监听端口修改成8080和8090,具体以下图所示:

2)注释默认的访问路径(本人亲身测试, 注释掉或者不注释掉均可以,貌似没啥影响)
在httpd.conf文件中找到以下代码:
- DocumentRoot "/usr/local/http2/htdocs"
将这行代码注释掉,以下图:

3)打开引入httpd-vhosts.conf文件的注释
在httpd.conf文件中找到以下代码:
- # Virtual hosts
- #Include conf/extra/httpd-vhosts.conf
将#Include conf/extra/httpd-vhosts.conf这行代码的注释打开,以下图:

二、修改Apache的httpd-vhosts.conf文件
咱们说到的方案一和方案二,只是在配置httpd-vhosts.conf文件的时候有所不一样。
在 http-vhosts.conf 配置的虚拟主机总的 文件夹访问权限配置<Directory>也能够放到httpd.conf中
方案1、
将同一个域名的不一样端口映射到不一样的虚拟主机(站点),不一样端口映射到不一样的站点
在httpd-vhosts.conf文件中添加以下代码:
- #配置咱们本身的虚拟主机
- <VirtualHost www.lyz.com:8080>
- #配置访问跟目录
- DocumentRoot "d:/Apache/myweb1"
- #这里配置欢迎首页面
- DirectoryIndex index.html index.htm index.php
- <Directory />
- Options FollowSymLinks
- #不容许别人修改咱们的页面
- AllowOverride None
- #设置访问权限
- Order allow,deny
- Allow from All
- </Directory>
- </VirtualHost>
-
- #配置咱们本身的虚拟主机
- <VirtualHost www.lyz.com:8090>
- #配置访问跟目录
- DocumentRoot "d:/Apache/myweb2"
- #这里配置欢迎首页面
- DirectoryIndex index.html index.htm index.php
- <Directory />
- Options FollowSymLinks
- #不容许别人修改咱们的页面
- AllowOverride None
- #设置访问权限
- Order allow,deny
- Allow from All
- </Directory>
- </VirtualHost>
具体以下图所示:

启动Apache在浏览器中输入:http://www.lyz.com:8080显示"我是第一个站点",输入:http://www.lyz.com:8090显示"我是第二个站点"。
方案2、
将同一个端口映射成不一样的域名,不一样的域名映射到不一样的站点。
在httpd-vhosts.conf文件中添加以下代码:
- #配置咱们本身的虚拟主机
- <VirtualHost *:8080>
- #配置访问跟目录
- DocumentRoot "d:/Apache/myweb1"
- ServerName www.lyz.com
- #这里配置欢迎首页面
- DirectoryIndex news.html index.html index.htm index.php
- <Directory />
- Options FollowSymLinks
- #不容许别人修改咱们的页面
- AllowOverride None
- #设置访问权限
- Order allow,deny
- Allow from all
- </Directory>
- </VirtualHost>
-
- #配置咱们本身的虚拟主机
- <VirtualHost *:8080>
- #配置访问跟目录
- DocumentRoot "d:/Apache/myweb2"
- ServerName www.liuyazhuang.com
- #这里配置欢迎首页面
- DirectoryIndex news.html index.html index.htm index.php
- <Directory />
- Options FollowSymLinks
- #不容许别人修改咱们的页面
- AllowOverride None
- #设置访问权限
- Order allow,deny
- Allow from all
- </Directory>
- </VirtualHost>
具体以下图所示:

启动Apache在浏览器中输入:http://www.lyz.com:8080显示"我是第一个站点",输入:http://www.liuyazhuang.com:8080显示"我是第二个站点"。