阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Linux下Apache虚拟主机的配置

250次阅读
没有评论

共计 2279 个字符,预计需要花费 6 分钟才能阅读完成。

      本文选择的 httpd 版本还是 httpd-2.2.4。

       访问 web 服务, 本质上看 (从协议上) 是访问某个 IP 的主机上的某个端口(默认是 80)。通常需要通过访问不同的域名或者端口实现对不同网站的访问(具体到服务器里就是不同目录), 这个时候就需要设置虚拟主机(VirtualHost). 通常分为这样 3 种:
     (1)基于主机
      (2)基于端口
      (3)基于 IP
以及这三种方式的混合。虚拟机的 ip 为 192.168.109.40。本机的 ip 为 192.168.109.1
准备工作:关闭防火墙,进入 apache 配置文件 httpd.conf
找到这一行并注释掉 DocumentRoot “/usr/local/apache/htdocs”
然后找到
#Virtual hosts
#Include /etc/httpd/extra/httpd-vhosts.conf 将第二行启用,然后进入 /etc/httpd/extra/httpd-vhosts.conf 这样准备工作就完成了,下面分别设置虚拟主机的三种方法。
1、基于 IP 的虚拟主机配置方法。
我们可以在 eth0 上绑定多个 ip 地址。可以用 ip addr add ip 地址 dev eth0 绑定 ip。在这里我们绑定 192.168.109.41 与 192.168.109.42 这两个 ip 地址。用 ip addr show 可以查看绑定完的信息,如下图所示
Linux 下 Apache 虚拟主机的配置
然后修改
/etc/httpd/extra/httpd-vhosts.conf 里的内容。例如下面:
     ServerName www.a.com             设置虚拟主机名为www.a.com
     DocumentRoot “/www/b.com”   web 页面存放位置
     Options none
     AllowOverride none
     Require all granted
    ErrorLog “/var/log/httpd/b.com-error_log”
    CustomLog “/var/log/httpd/b.com-access_log” common
同理,对配置 192.168.109.42 的虚拟主机只需要按上面内容复制,然后修改相应位置即可。
因为我们把 web 页面放在 /www/a.com 与 /www/b.com 下,所以创建这两目录
mkdir -p /www/a.com
mkdir -p /www/b.com
在 a.com 与 b.com 里面创建测试文件 index.html。为了区分在 a.com 里的 index.html 的内容是:

a.com

Linux 下 Apache 虚拟主机的配置
b.com 里的 index.html 的内容是:

b.com

Linux 下 Apache 虚拟主机的配置
配置完成后重启 apache、
访问 192.168.109.41,如下图
Linux 下 Apache 虚拟主机的配置
访问 192.168.109.42,如下图
Linux 下 Apache 虚拟主机的配置
我们在访问下虚拟机 ip 192.168.109.40
Linux 下 Apache 虚拟主机的配置
由此可以知道已经 配置成功
2、基于端口的虚拟主机配置方法。
还得先修改 /etc/httpd/httpd.conf 这个配置文件,如图所示:
Linux 下 Apache 虚拟主机的配置
默认监听端口号是 80。我们配置基于端口 8080 的虚拟主机
只需要下面加一行:Listen 8080 即可保存退出。
然后就是修改/etc/httpd/extra/httpd-vhosts.conf 这个文件。以 ip 地址为 192.168.109.41 为例
如图所示:
Linux 下 Apache 虚拟主机的配置
 
所以我们还得创建 /www/c.com,这个目录,具体做法参考之前的。
访问 192.168.109.41:80 端口如下图所示
Linux 下 Apache 虚拟主机的配置
访问 192.168.109.41:8080 端口如下图所示
Linux 下 Apache 虚拟主机的配置
由此可以知道已经 配置成功
2、基于域名的虚拟主机配置方法
由于我们在本地配置没有 DNS 服务器,所以我们需要自己在本地解析,现在以 ip 为 192.168.109.42 为例
本地解析 DNS 的做法是:打开我的电脑修改 C:\Windows\System32\drivers\etc 里的 hosts 文件
192.168.109.42 www.b.com
192.168.109.42 www.d.com
将这两行添加进去。然后在修改/etc/httpd/extra/httpd-vhosts.conf 这个文件如图所示Linux 下 Apache 虚拟主机的配置
同理,还得创建 /www/d.com 这里不在描述。
访问 www.b.com,如下图所示
Linux 下 Apache 虚拟主机的配置
访问 www.d.com,如下图所示
Linux 下 Apache 虚拟主机的配置

Ubuntu Server 14.04 安装 Web 服务器(Linux+Apache+MySQL+PHP)  http://www.linuxidc.com/Linux/2015-06/119061.htm

Linux 下安装配置 PHP 环境(Apache2)  http://www.linuxidc.com/Linux/2015-05/118062.htm

Ubuntu 13.04 安装 LAMP\Vsftpd\Webmin\phpMyAdmin 服务及设置 http://www.linuxidc.com/Linux/2013-06/86250.htm

CentOS 5.9 下编译安装 LAMP(Apache 2.2.44+MySQL 5.6.10+PHP 5.4.12) http://www.linuxidc.com/Linux/2013-03/80333p3.htm

RedHat 5.4 下 Web 服务器架构之源码构建 LAMP 环境及应用 PHPWind http://www.linuxidc.com/Linux/2012-10/72484p2.htm

Apache 的详细介绍:请点这里
Apache 的下载地址:请点这里

本文永久更新链接地址:http://www.linuxidc.com/Linux/2016-04/130381.htm

正文完
星哥说事-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-21发表,共计2279字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中