你好,游客 登录 注册 搜索
背景:
阅读新闻

Apache服务器在80端口配置多域名虚拟主机的方法

[日期:2017-11-12] 来源:Linux社区  作者:LO-gin [字体: ]

我们在配置一台服务器的时候,如果只运行一个站点,往往过于浪费资源。Nginx和Apache都可以通过配置虚拟主机实现多站点。配置虚拟主机的方式主要有两种,一种是多个不同端口对应的多个虚拟主机站点,一种是同一端口对应多个不同域名的虚拟主机站点。这里我用80端口为例,在Apache配置多个不同域名虚拟主机。

试验环境:Windows+Apache (Linux+Apache同理)

1、  虚拟机需要用到Rewrite,所以先编辑Apache的conf目录下的httpd.conf文件

掉Rewrite模块列行中前面的#号(删除注释)。添加mod_rewrite.so模块支持。

LoadModule rewrite_module modules/mod_rewrite.so

同时,还要让主配置文件包含虚拟机配置文件:

找到 #Include conf/extra/httpd-vhosts.conf 这一行去掉前面的 # 。

2、  然后编辑 /conf/extra/httpd-vhosts.conf 文件:

(1)如果里面有默认的设置,删除里面默认设置的虚拟主机,我这里是以下这段代码:

<VirtualHost _default_:80>

DocumentRoot "/Apache24/htdocs"

#ServerName www.example.com:80

</VirtualHost>

(2)修改NameVirtualHost参数,要在本机的所有IP的80端口上面做多域名:NameVirtualHost *:80

(3)添加虚拟主机一:

<VirtualHost *:80>
    #管理员邮箱
    ServerAdmin xxx@163.com
    #虚拟主机根目录 
    DocumentRoot "E:/www/linux/"     
    #虚拟主机名 
    ServerName www.linuxidc.net   
    #虚拟主机别名                     
    ServerAlias linuxidc.net 
    #日志路径
    ErrorLog "logs/linux-error.log"
    CustomLog "logs/linux-access.log" common
    RewriteEngine on
</VirtualHost>

(4)添加虚拟主机二:

<VirtualHost *:80>
    #管理员邮箱
    ServerAdmin xxx@163.com
    #虚拟主机根目录 
    DocumentRoot "E:/www/linuxidc/"     
    #虚拟主机名 
    ServerName www.linuxidc.com 
    #虚拟主机别名                     
    ServerAlias linuxidc.com
    #日志路径
    ErrorLog "logs/linuxidc-error.log"
    CustomLog "logs/linuxidc-access.log" common
    RewriteEngine on
</VirtualHost>

(5)保存退出

3、修改本地hosts文件:

在windows中,进入C:/Windows/System32/drivers/etc (在linux环境中应该是在/etc/hosts)

打开host文件,在最后面添加下面两行:

127.0.0.1      www.linuxidc.net

127.0.0.1      www.linuxidc.com

保存退出

4、重启服务器。

在你两个虚拟机的根目录下新建一些测试文件,比如在”E/www/linux/”目录新建个test.html,在目录"E:/www/linuxidc/"页新建个test.html,写上对应的测试代码,在浏览器里输入www.linuxidc.net/test.html和www.linuxidc.com/test.html查看结果。

本文永久更新链接地址http://www.linuxidc.com/Linux/2017-11/148536.htm

linux
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款