Apache虚拟主机配置

前言:Apache虚拟主机配置有3中方法:基于IP配置、基于域名配置和基于端口配置,在一个Apache服务器上可以配置多个虚拟主机,实现一个服务器提供多站点服务,其实就是访问同一个服务器上的不同目录。

一、基于域名配置

1.1 首先查看主配置文件,是否打开了虚拟主机配置选项;

[root@localhost test]# vi /etc/httpd/conf/httpd.conf
IncludeOptional conf.d/*.conf # 使虚拟主机配置文件生效(/usr/share/doc/httpd-2.4.6/httpd-vhosts.conf)
1.2 打开虚拟主机配置文件添加如下内容:

[root@localhost test]# vi /usr/share/doc/httpd-2.4.6/httpd-vhosts.conf
<VirtualHost *:80>

DocumentRoot "/steven/test"  #网站根目录

   ServerName www.test.com   #域名

DirectoryIndex index.html index.htm index.php    #这里配置欢迎首页面

<Directory />
       Options FollowSymLinks
       
       AllowOverride None   #不允许别人修改我们的页面

       order allow,deny    #设置访问权限

       Allow from all

</Directory>

</VirtualHost>
1.3 在根目录下面新建文件:

[root@localhost test]# cd /steven/test/
[root@localhost test]# vi index.php
<?php

Echo "测试";

1.4 设置本地域名解析

steven:~ root# vi /etc/hosts
10.0.2.114 www.test.com
127.0.0.1 www.test.com 如果Apache安装在本机。

1.5 浏览其中输入www.test.com访问测试页面

如果出现浏览器状态码为403,就是因为权限不足引起的,再次打开httpd.conf进行添加权限

找到下面的代码

<Directory />

AllowOverride none

Require all denied

</Directory>

将它改为:

<Directory />

AllowOverride none

Require all granted

</Directory>

二、基于端口配置虚拟主机

2.1 修改主配置文件,添加多个监听端口

[root@localhost ~]# vi /etc/httpd/conf/httpd.conf
Listen 80
Listen 8080
2.2 编辑 httpd-vhosts.conf ,添加一下信息

[root@localhost httpd-2.4.6]# vi httpd-vhosts.conf
/#虚拟机端口配置
<VirtualHost *:8080>

DocumentRoot "/steven/test2"

ServerName www.test2.com

ServerAlias www.test2.com

<Directory "/steven/test2">

Options FollowSymLinks ExecCGI

  AllowOverride All

  Order allow,deny

  Allow from all

  Require all granted

</Directory>

</VirtualHost>
2.3 重启Apache服务访问www.test2.com:8080

相关推荐