第二步:在主配置中引入我们的虚拟主机配置
sudo vim /etc/httpd/conf/httpd.conf # 在主配置文件末尾添加以下内容 # Load vhost-config files in the "/etc/httpd/vhost-conf.d" directory if any # created by zhongjin on 2016-12-21 冬至 Include vhost-conf.d/*.conf第三步:在对应目录放入项目代码
直接参考 Ubnutu 环境下的第三步配置。
第四步:修改 /etc/hosts 文件
直接参考 Ubnutu 环境下的第四步配置。
第五步:重启 apache 服务器并测试
重启 apache 服务器使得配置生效:
sudo systemctl restart httpd.service在浏览器(如果是桌面版的话)中访问 或 ,看看是否输出了 index.php 文件中的内容。
如果你不是桌面版(服务器),那么可以使用命令行测试:
curl www.linuxidc.com看看返回的字符串是不是正确输出!
注意:
在 Centos 下,由于默认的虚拟主机配置(localhost)是直接在 /etc/httpd/conf/httpd.conf 文件中配置的,所以我们在后面添加我们的配置的时候,会覆盖前面的相同的配置,所以当你 curl localhost 的时候,可能访问的是 linuxidc 项目下的代码,也可能是 wordpress 下的代码。
我的解决方案是:按照上面的步骤重新建一个 localhost 域名,使它指向 /var/www/html 目录即可。
二、同域名下,通过访问不同的端口获得不同的站点其实在这里实现的步骤跟上面的没多大差别,我就说说需要做的额外操作。
这里以 linuxidc 为例,通过访问 :80(默认就是80),返回的是“hello,welcome to linuxidc“,而访问 :8080,返回的是 ”hello,welcome to linuxidc background management“。
Ubuntu 环境下:让我们的 apache2 监听 8080 端口:
修改 /etc/apache2/ports.conf 文件,在 Listen 80 后面添加两行:
NameVirtualHost *:8080 Listen 8080在 /etc/apache2/sites-available/ 下增加 www-linuxidc-com-8080.conf,并在 /etc/apache2/sites-enabled/ 下建立符号链接。方法参考前面。
www-linuxidc-com-8080.conf 的主要配置内容如下:
<VirtualHost *:8080> #Created by zhongjin on 2016-12-21 冬至 Serveradmin 1054840542@qq.com ServerName DocumentRoot /home/www/linuxidc_admin <Directory "/home/www/linuxidc_admin"> Options FollowSymLinks AllowOverride All #Require all denied Require all granted </Directory> </VirtualHost>大家一定要看清楚需要修改的地方,VirtualHost 改为 8080,DocumentRoot 和 Directory 均改为 /home/www/linuxidc_admin,但是 ServerName 不用改,还是用
创建目录 /home/www/linuxidc_admin,添加文件 index.php,输出 “hello,welcome to linuxidc background management”。
重启 apache 服务器,测试
CentOS 环境下:让 httpd 监听 8080 端口:
直接修改 /etc/httpd/conf/httpd.conf 配置文件,在 Listen 80 后面添加两行:
# created by zhongjin on 2016-12-21 冬至 NameVirtualHost *:8080 Listen 8080在 /etc/httpd/vhost-conf.d 下面添加 www-linuxidc-com-8080.conf
直接复制 www-linuxidc-com.conf 文件,改名为 www-linuxidc-com-8080.conf,并修改为:
<VirtualHost *:8080> #Created by zhongjin on 2016-12-21 冬至 Serveradmin 1054840542@qq.com ServerName DocumentRoot /home/www/linuxidc_admin <Directory "/home/www/linuxidc_admin"> Options FollowSymLinks AllowOverride All #Require all denied Require all granted </Directory> </VirtualHost>注意修改的地方!
创建目录 /home/www/linuxidc_admin,添加文件 index.php,输出 “hello,welcome to linuxidc background management”。
重启 apache 服务器,测试
后话:多站点的配置还有另外一种配置,就是通过不同的IP进行多站点的配置,由于我没有进行实验(前面的内容都是LZ 亲身体会过),所以这里就不给出方法了。
更多Apache相关教程见以下内容:
CentOS6.8编译安装Apache2.4.25、MySQL5.7.16、PHP5.6.29
Ubuntu 16.04 LTS安装Apache2+PHP7.0+MySQL+phpMyAdmin图文详解