关于小悟志网站地图归档友情链接联系Feed

云上小悟 + 

首页 » 网站建设 »

配置APACHE实现多虚拟主机(多站点)

网站建设
2015年10月1日 / 191次阅读
标签:APACHE

拍拍贷

文章《配置APACHE实现多虚拟主机(多站点)》的特色图片

使用VPS,或者像我一样,使用阿里云ECS建站的朋友,如果想在一个服务器上跑多个网站,即我们常说的多站点,就需要用到Apache多虚拟主机的配置。本文介绍基于域名的apache多虚拟主机的配置。

再明确一下基于域名的多虚拟主机(多站点)的概念。比如我有一个VPS空间,或者云主机空间,带一个IP地址A,我还有两个域名1.com和2.com,都存放在这个空间里面。现在我要配置Apache,让我的这两个域名都可以访问,这时,这两个网站共享了一个IP地址,这就是多虚拟主机,每个网站相当于跑在一个Apache的虚拟机里面。当然,一个空间也可以运行3个,4个,甚至更多的网站,他们全都共享一个IP地址。虚拟主机因此得名!

现在开始说多虚拟主机的Apache的配置:

1, 配置Apache的httpd.conf文件

httpd.conf是Apache的主要配置文件,为了让Apache支持多虚拟主机,我们首先要修改这个配置文件。

请打开LoadModule vhost_alias_module modules/mod_vhost_alias.so模块,就是将这一行代码前面的#号去掉。同时却掉Include conf/extra/httpd-vhosts.conf这一行前面的#号注释。

LoadModule vhost_alias_module modules/mod_vhost_alias.so
Include conf/extra/httpd-vhosts.conf

 

以上两行配置表示打开Apache支持虚拟主机的模块,同时添加多虚拟主机的额外的配置文件。

然后修改DocumentRoot和<Directory>。在多虚拟主机的场景下,根目录不再指向某一个网站,而是指向多个网站共用的那个上层目录(多个网站的代码要放在同一个目录里面)。比如,我用我本机上的配置来举例:

DocumentRoot "D:/xampp/htdocs"
<Directory "D:/xampp/htdocs">

 

这个目录下面有两个网站:

htdocs下面有wordpress和wpchajian.cn两个网站

htdocs下面有wordpress和wpchajian.cn两个网站

2, 配置额外的httpd-vhosts.conf文件

这个文件在extra目录里面。我直接把我的配置贴出来,一目了然:

# Virtual Hosts
#
# Required modules: mod_log_config

# If you want to maintain multiple domains/hostnames on your
# machine you can setup VirtualHost containers for them. Most configurations
# use only name-based virtual hosts so the server doesn't need to worry about
# IP addresses. This is indicated by the asterisks in the directives below.
#
# Please see the documentation at
# <URL:http://httpd.apache.org/docs/2.4/vhosts/>
# for further details before you try to setup virtual hosts.
#
# You may use the command line option '-S' to verify your virtual host
# configuration.

#
# Use name-based virtual hosting.
#
##NameVirtualHost *:80
#
# VirtualHost example:
# Almost any Apache directive may go into a VirtualHost container.
# The first VirtualHost section is used for all requests that do not
# match a ##ServerName or ##ServerAlias in any <VirtualHost> block.
#
<VirtualHost *:80>
##ServerAdmin webmaster@dummy-host.example.com
DocumentRoot "D:/xampp/htdocs/wordpress"
ServerName www.mywptest.com
##ServerAlias www.dummy-host.example.com
##ErrorLog "logs/dummy-host.example.com-error.log"
##CustomLog "logs/dummy-host.example.com-access.log" common
</VirtualHost>

<VirtualHost *:80>
##ServerAdmin webmaster@dummy-host2.example.com
DocumentRoot "D:/xampp/htdocs/wpchajian.cn/wordpress"
ServerName wpchajian.cn
##ErrorLog "logs/dummy-host2.example.com-error.log"
##CustomLog "logs/dummy-host2.example.com-access.log" common
</VirtualHost>

 

请注意高亮的那个几行,其它的配置都没有任何修改。

最后重启Apache服务进程之后,两个网站就都可以访问了,APACHE实现多虚拟主机的配置到此结束。

本文链接:http://www.maixj.net/wz/apache-vhosts-8652
云上小悟 麦新杰(QQ:1093023102)

相关文章

评论是美德

无力满足评论实名制,评论对非实名注册用户关闭,有事QQ:1093023102.


前一篇:
后一篇:

栏目精选


©Copyright 麦新杰 Since 2014 云上小悟独立博客版权所有 备案号:苏ICP备14045477号-1

网站二维码
拍拍贷
go to top