Apache配置多个网站的方法

Apache的虚拟主机是一种允许在同一台机器上,运行超过一个网站的解决方案。虚拟主机有两种,一种叫基于IP的(IP-based),另一种叫基于名字的(name-based)。虚拟主机的存在,对用户来说是透明的。

基于IP的虚拟主机:
对于基于IP的虚拟主机来说,必须为每个虚拟主机配备一个单独的IP。也就是说你的服务器必须有多个IP地址。对于这种方式,我们在本地就可以做一个实验来进行配置。
配置基于IP的虚拟主机,有两种方法:一是启动多个apache伺服程序,每个实例使用单独的配置文件,一般来说,在同一台机器上,架设两个网站,这两个网站互相之间不希望对方访问自己的文件,就使用这种方式,每个apache实例都是用单独的用户名,组来启动,并且放到不同的目录下,这种方式只要在apche的配置文件中,为Listen命令配置不同的ip即可;
第二种方法是只启动一个单一的apache进程,使用VirtualHost指令来为不同的站点,配置不同的值,这种配置方式,我们可以在本地做个试验的,由于127.0.0.*的所有ip都是指向本机的,所以,我们可以随便拿两个出来做实验,按照如下方式配置apache,之后,在hosts文件中,将域名绑定到配置的ip上,就可以实现在本地运行多个wp系统的一个配置:
    <VirtualHost 127.0.0.1:80>
        ServerAdmin yourname@domain.com
        DocumentRoot "E:/server110.com/wordpress-latest"
        ServerName server110.com
        ServerAlias www.server110.com
        ErrorLog "logs/wplatest.com-error.log"
        CustomLog "logs/server110.com-access.log" combined
    </VirtualHost>
    <VirtualHost 127.0.0.2:80>
        ServerAdmin yourname@domain.com
        DocumentRoot "E:/server110.com/wordpress-2.9.2"
        ServerName server110.com
        ServerAlias www.server110.com
        ErrorLog "logs/server110.com-error.log"
        CustomLog "logs/server110.com-access.log" combined
    </VirtualHost>

基于名字的虚拟主机:
基于名字的虚拟主机比起基于IP的来说,配置要更加简单,它只要依靠客户端发送的HTTP头信息中的HOST字段来判断,服务器到底要服务哪个虚拟主机。一般情况下,还是比价推荐使用这种方式。因为IP资源日渐稀缺,对于一般用户来说,为一台服务器购买多个IP也是成本较高的。

设置方法:

1.在/etc/httpd/conf/下新建vhost.conf
(注意,在这种方式中,ServerName是必填字段):
    NameVirtualHost *:80
    <VirtualHost *:80>
        ServerAdmin yourname@domain.com
        DocumentRoot "E:/server110.com/wordpress-latest"
        ServerName server110.com
        ServerAlias www.server110.com
        ErrorLog "logs/server110.com-error.log"
        CustomLog "logs/server110.com-access.log" combined
    </VirtualHost>
    <VirtualHost *:80>
        ServerAdmin yourname@domain.com
        DocumentRoot "E:/baidu.com/wordpress-2.9.2"
        ServerName baidu.com
        ServerAlias www.baidu.com
        ErrorLog "logs/baidu.com-error.log"
        CustomLog "logs/baidu.com-access.log" combined
    </VirtualHost>

二、 服务器上有多少个网站,那么就分别配置多少份以上信息,并根据实际情况修改其中的内容,测试时服务器上的页面配置情况如下:

z1-1.JPG

 

三、 在http.conf文件中加入一行“Include /etc/httpd/conf/vhost.conf”,将vhost.conf文件内容包含进来

 

四、在/etc/hosts文件中将网站的域名绑定到本地环回地址上:

127.0.0.1 test1.huigher.cn

127.0.0.1 test2.huigher.cn

127.0.0.1 test3.huigher.cn


七、 最后使用service httpd reload重新加载配置文件或service httpd restart重启Apache进程即可


八、 测试不同的域名返回了不同的网站内容

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

THMAIL

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值