Ubuntu/CentOS下Apache多站点配置(2)

第二步:在sites-enabled目录下建立符号链接

cd /etc/apache2/sites-enabled #建立对应的软链接 sudo ln -s /etc/apache2/sites-available/www-linuxidc-com.conf /etc/apache2/sites-enabled/www-linuxidc-com.conf sudo ln -s /etc/apache2/sites-available/www-wordpress-com.conf /etc/apache2/sites-enabled/www-wordpress-com.conf

第三步:在对应目录放入项目代码

如上面所示,我们的 linuxidc 项目代码放在 /home/www/linuxidc,wordpress 项目代码放在 /home/www/wordpress,那么我们在对应目录下创建对应目录并赋予相应权限,以 linuxidc 为例:

sudo mkdir -p /home/www/linuxidc

然后在 /home/www/linuxidc 下放入项目代码,这里为了测试就新建 index.php,内容如下:

<?php echo "hello,welcome to linuxidc!";

赋予相应的权限:

sudo chmod -R 777 /home/www/linuxidc

针对 wordpress 做同样的操作。

第四步:修改 /etc/hosts 文件

打开查看 /etc/hosts 文件,开头是:

127.0.0.1 localhost

我们在该行后面添加:

# modified by zhongjin on 2016-12-21 冬至 127.0.0.1 www.linuxidc.com 127.0.0.1 www.wordpress.com #保存退出

第五步:重启 apache 服务器并测试

重启 apache 服务器使得配置生效:

systemctl restart apache2.service

在浏览器(如果是桌面版的话)中访问 或 ,看看是否输出了 index.php 文件中的内容。

如果你不是桌面版(服务器),那么可以使用命令行测试:

curl www.linuxidc.com

看看返回的字符串是不是正确输出!

Centos 环境下:

我的环境是:

操作系统:Centos 7
apache 服务: Apache/2.4.6 (CentOS)(通过 httpd -v 获取)

在这里我们实现 Ubuntu 环境下同样的效果。

Centos 下,apache 的服务叫 httpd,主配置文件为 /etc/httpd/conf/httpd.conf,我们浏览 httpd.conf 文件,搜索关键字 vhost,发现根本找不到相关的东西,不过在最后两行有以下内容:

# Load config files in the "/etc/httpd/conf.d" directory, if any. IncludeOptional conf.d/*.conf

难道虚拟主机的配置也在 /etc/httpd/conf.d 下面?LZ 去看了一下该目录下面所有文件的内容,发现根本没有关于虚拟主机的配置,如果你再仔细观察 http.conf 配置文件,你就会发现,其实在 Centos 下,其默认主机只有 localhost ==> /var/www/html ,如果需要的话,我们得自己扩展了。

我们有两种方式实现自己的扩展,一种是直接在 /etc/httpd/conf/httpd.conf 后面追加配置内容,一种是在外部文件先配置好,再类似 IncludeOptional conf.d/*.conf 那样引入我们的配置。一般不推荐直接修改主配置文件,所以我们使用第二种方式。

我们还是模仿上面的配置:

第一步:新增站点配置文件

cd /etc/httpd sudo mkdir vhost-conf.d

我们在 vhost-conf.d 目录下新增我们的虚拟主机配置文件 www-linuxidc-com.conf 和 www-wordpress-com.conf,以 www-linuxidc-com.conf 为例,我们输入以下内容:

<VirtualHost *:80> #Created by zhongjin on 2016-12-21 冬至 Serveradmin linuxidc@linuxidc.com ServerName DocumentRoot /home/www/linuxidc <Directory "/home/www/linuxidc"> Options FollowSymLinks AllowOverride All #Require all denied Require all granted </Directory> </VirtualHost>

针对 www-wordpress-com.conf 改变相应的配置,即修改 ServerName 为 ,DocumentRoot 和 Directory 修改为 /home/www/wordpress。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/51e6347d8ea9403ce08849088205ca78.html