apache httpd 虚拟主机配置(基于centos 7)

Posted 刘笙

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了apache httpd 虚拟主机配置(基于centos 7)相关的知识,希望对你有一定的参考价值。

虚拟主机——在一台www服务器上运行多个网站

前提条件

  • 正确安装httpd
    • 网络上安装,
      1. 正确设置yum源
      2. 检查包:yum list |grep httpd
      3. 安装:yum install httpd
      4. 查看服务:service httpd status
      5. 验证:本机打开浏览器,地址栏输入[主机IP],若有返回即表示安装成功(注意:防火墙在关闭状态下或者添加相应端口)
      6. 启动等:service httpd start/stop/status/restart
  • 主机IP:192.168.0.225
  • 防火墙关闭(或者已经开放相应端口)
  • 分别在www目录下新建两个目录:mkdir god.com hell.com,并分别在god.com和hell.com的目录下新建index.html文件如下

god.com目录下的index.html

<html>
<head>hell</head>
<br></br>
<body>
this is hell area
</body>
</html>

hell.com目录下的index.html

<html>
<head>hell</head>
<br></br>
<body>
this is hell area
</body>
</html>

 

配置虚拟主机

两种方式:基于IP和基于主机名

  • 基于IP

  1、基于同IP不同端口(在默认的配置前提下:已有80端口)

    vim /etc/httpd/conf/httpd.conf

      添加监听端口:listen 8080

      注释ServerAdmin:#ServerAdmin root@localhost

      注释documentRoot:#DocumentRoot "/var/www/html"

      在配置文件最后添加以下内容:

NameVirtualHost *:80

<VirtualHost 192.168.0.225:80>
        ServerAdmin admin@god.com
        DocumentRoot /var/www/god.com
        Servername www.god.com
        errorlog logs/god.com-error_log
        customlog logs/god.com-access_log common
</VirtualHost>
<VirtualHost 192.168.0.225:8080>
        ServerAdmin admin@hell.com
        DocumentRoot /var/www/hell.com
        Servername www.hell.com
        errorlog logs/hell.com-error_log
        customlog logs/hell.com-access_log common
</VirtualHost>

 

  验证:分别访问192.168.0.225和192.168.0.225:8080,结果如下:

 


 

    2、基于同端口不同IP(同1,针对有两个IP的服务器,配置中只是IP不同)

  • 基于主机名(ing)

    注释ServerAdmin:#ServerAdmin root@localhost

    注释documentRoot:#DocumentRoot "/var/www/html"

    在配置文件最后添加以下内容:

NameVirtualHost *:80
<VirtualHost *:80>
        ServerAdmin admin@god.com
        DocumentRoot /var/www/god.com
        Servername www.god.com
        errorlog logs/god.com-error_log
        customlog logs/god.com-access_log common
</VirtualHost>

<VirtualHost *:80>
        ServerAdmin admin@hell.com
        DocumentRoot /var/www/hell.com
        Servername www.hell.com
        errorlog logs/hell.com-error_log
        customlog logs/hell.com-access_log common
</VirtualHost>

测试:在本机(win 10)中做如下配置:

  1、编辑文件:C:\\Windows\\System32\\drivers\\etc\\hosts,加入如下两条数据

192.168.0.225 www.god.com
192.168.0.225 www.hell.com

  2、打开浏览器,输入以上域名,出现如下结果:大功告成

 

重启httpd

service httpd start/stop/restart/status

设置开机启动

1、编辑文件/etc/rc.d/rc.local,添加如下内容:

  /usr/sbin/apachectl start

2、执行如下命令:

  chmod +x rc.local

3、重启测试

 


完事了才发现的一篇文章:http://www.cnblogs.com/hi-bazinga/archive/2012/04/23/2466605.html

 

 

以上是关于apache httpd 虚拟主机配置(基于centos 7)的主要内容,如果未能解决你的问题,请参考以下文章

apache httpd 虚拟主机配置(基于centos 7)

Apache配置基于端口/IP的虚拟主机

apache配置虚拟主机的三种方式

linux apache虚拟主机配置(基于ip,端口,域名)

基于Apache创建虚拟目录及配置授权访问虚拟目录

Linux系统之安装apache服务