CentOS7配置httpd虚拟主机

本实验旨在CentOS7系统中,httpd-2.4配置两台虚拟主机,主要有以下要求:

(1) 提供两个基于名称的虚拟主机:

  www1.stuX.com,页面文件目录为/web/vhosts/www1;错误日志为/var/log/httpd/www1/error_log,访问日志为/var/log/httpd/www1/access_log;

  www2.stuX.com,页面文件目录为/web/vhosts/www2;错误日志为/var/log/httpd/www2/error_log,访问日志为/var/log/httpd/www2/access_log;

(2) 通过www1.stuX.com/server-status输出其状态信息,且要求只允许提供账号的用户访问;

(3) www1不允许192.168.1.0/24网络中的主机访问;

查看系统版本和httpd版本

[[email protected] ~]$httpd -v
Server version: Apache/2.4.6 (CentOS)
Server built:   Nov 14 2016 18:04:44
[[email protected] ~]$cat /etc/centos-release
CentOS Linux release 7.3.1611 (Core) 

启动httpd,测试能否正常运行

[[email protected] ~]$systemctl start httpd.service
[[email protected] ~]$systemctl status httpd.service
● httpd.service - The Apache HTTP Server
   Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled; vendor preset: disabled)
   Active: active (running) since Thu 2017-06-01 03:03:12 CST; 5s ago                      #   active 表示正常运行
     Docs: man:httpd(8)
           man:apachectl(8)
  Process: 6473 ExecStop=/bin/kill -WINCH ${MAINPID} (code=exited, status=0/SUCCESS)
 Main PID: 6485 (httpd)
   Status: "Processing requests..."
   CGroup: /system.slice/httpd.service
           ├─6485 /usr/sbin/httpd -DFOREGROUND
           ├─6486 /usr/sbin/httpd -DFOREGROUND
           ├─6487 /usr/sbin/httpd -DFOREGROUND
           ├─6489 /usr/sbin/httpd -DFOREGROUND
           ├─6490 /usr/sbin/httpd -DFOREGROUND
           └─6572 /usr/sbin/httpd -DFOREGROUND

Jun 01 03:03:11 host systemd[1]: Starting The Apache HTTP Server...
Jun 01 03:03:12 host systemd[1]: Started The Apache HTTP Server.

使用curl命令访问

[[email protected] ~]$ip a show ens38    # 查看ip
3: ens38: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:0c:29:dc:18:5f brd ff:ff:ff:ff:ff:ff
    inet 192.168.55.128/24 brd 192.168.55.255 scope global dynamic ens38
       valid_lft 1752sec preferred_lft 1752sec
    inet6 fe80::20c:29ff:fedc:185f/64 scope link
       valid_lft forever preferred_lft forever
[[email protected] ~]$curl http://192.168.55.128       # 访问
<!DOCTYPE>
<h1>
    CentOS 7.3
</h1>

创建指定文件目录

[[email protected] conf.d]$mkdir -pv /web/vhosts/www1
[[email protected] conf.d]$mkdir -pv /web/vhosts/www2[[email protected] conf.d]$mkdir -pv /var/log/httpd/www2[[email protected] conf.d]$mkdir -pv /var/log/httpd/www1

根据要求填写虚拟主机配置信息

# path /etc/httpd/conf.d/vir.conf      # 配置文件全路径
#virtual host 1     # 虚拟主机1的配置
<VirtualHost 192.168.55.128:80>
    ErrorLog "/var/log/httpd/www1/error_log"
    CustomLog "/var/log/httpd/www1/access_log" combined
    <Location /server-status>
        SetHandler server-status
    </Location>
    <Directory /web/vhosts/www1>
        <RequireAll>
        Require all granted
        Require not ip 192.168.1
        </RequireAll>
    </Directory>
</VirtualHost>
# virtual host 2     # 虚拟主机2的配置
<VirtualHost 192.168.55.128:80>
    ServerName www2.stuX.com
    DocumentRoot "/web/vhosts/www2"
    ErrorLog "/var/log/httpd/www2/error_log"
    CustomLog "/var/log/httpd/www2/access_log" combined
    <Directory /web/vhosts/www2>
        <RequireAll>
          Require all granted
        </RequireAll>
    </Directory>
</VirtualHost>

创建www1和www2的index页面

[[email protected] conf.d]$cat /web/vhosts/www1/index.html
welcome to www1
thank you
[[email protected] conf.d]$cat  /web/vhosts/www2/index.html
welcome to www2
thank you

重载httpd配置文件

[[email protected] conf.d]$httpd -t
Syntax OK
[[email protected] conf.d]$systemctl reload httpd.service 

修改客户端主机的hosts文件,以便能解析域名

hosts在windows环境下的路径为C:\Windows\System32\drivers\etc。在该文件中添加两行

192.168.55.128 www1.stuX.com
192.168.55.128 www2.stuX.com

访问结果

图1  访问www1站点

图2  访问www2站点

图3  查看www1站点的访问状态——正常

图4  查看www2站点的访问状态错误

时间: 2024-08-05 07:07:03

CentOS7配置httpd虚拟主机的相关文章

httpd虚拟主机配置及基于用户的访问控制

本文旨在实践httpd虚拟主机及基于用户的访问控制 知识储备 虚拟主机有三种实现方案: 基于ip: 为每个虚拟主机准备至少一个独有ip地址: 基于port: 为每个虚拟主机使用至少一个独有的port: 基于FQDN: 为每个虚拟主机使用至少一个FQDN: 注意:一般虚拟机不要与中心主机混用:因此,要使用虚拟主机,得先禁用'main'主机: 禁用方法:注释中心主机的DocumentRoot指令即可: 基于用户的访问控制: http协议认证方式2种 basic:明文 digest:消息摘要认证 本次

web服务之httpd虚拟主机配置你造吗?

一.httpd虚拟主机的分类 1.基于ip地址的虚拟主机 2.基于端口的虚拟主机 3.基于域名的虚拟主机 二.配置虚拟主机 实验环境:centos6,使用Yum安装的httpd服务 准备工作:注释中心主机的DocumentRoot站点根目录,创建/etc/httpd/conf.d/vhosts.conf配置文件,创建实验需的站点目录: mkdir -pv /www/{a.com,b.net,c.org}/htdocs,每次修改配合文件时检查语法:httpd -t   重启服务:service h

配置LANMP环境(7)-- 配置nginx反向代理,与配置apache虚拟主机

一.配置nginx反向代理 1.修改配置文件 vim /etc/nginx/nginx.conf 在35行http下添加一下内容: include /data/nginx/vhosts/*.conf; include /etc/nginx/upstream.conf; 2.在/etc/nginx/目录下新建 upstream.conf文件 vim upstream.conf upstream dev.test1.com { server 127.0.0.1(换成虚拟机ip):8080 weigh

RHEL7 配置http虚拟主机

RHEL7 配置http虚拟主机 一.安装服务 通过yum的方式进行安装,如果没有配置,可以执行以下命令进行配置 [[email protected] ~]# cat > /etc/yum.repos.d/example.repo <<EOF > [example] > name=example > baseurl=file:///mnt > enabled=1 > gpgcheck=0 > EOF yum安装能解决软件包之间的依赖关系 [[email

php 学习 day2-Apache服务器的配置更改 和配置本地虚拟主机

上一次讲到了网页浏览的背后流程,那么接下来我们就开始了解服务端的一些知识,为了理清思路,我会按照Apache--php脚本--mysql服务器--php与mysql服务连接的顺序来记录笔记. 关于Apache如何安装,网上有很多种教程,这里就不再一一赘述了,我用的是wamp sever. wamp是一款一款windows系统下的Apache+PHP+Mysql集成环境整合包,这款工具拥有简单的图形和菜单安装和配置环境.安装起来也比较简单操作也比较简单. 安装好后开启为绿色小图标,右键单击这个图标

PHP中级篇 Apache配置httpd-vhosts虚拟主机总结及注意事项[OK]

经常使用Apache虚拟主机进行开发和测试,但每次需要配置虚拟主机时都习惯性的ctrl+c和ctrl+v,这次由于重装系统,需要配置一个新的PHP开发环境虚拟主机,于是总结一下Apaceh配置httpd-vhosts虚拟主机使用方法和步骤,便于查找和使用. 开发环境:WAMP网址:http://www.wampserver.com/en/ 实例一,Apaceh配置localhost虚拟主机步骤1,用记事本打开apache目录下httpd.conf文件(如:D:\wamp\bin\apache\a

php中apache服务器使用及配置④ apache虚拟主机 web访问时序图

虚拟主机的配置 思考问题!http://localhost/news.html http://www.sohu.comhttp://www.taobao.com.cn目前我们是 http://localhost/myblog/需求我希望http://www.shunping.comhttp://www.sohu.com配置虚拟主机的步骤如下:1. 启用 httpd-vhosts.conf在 httpd.conf 文件中# Virtual hosts ,虚拟主机Include conf/extra

配置apache虚拟主机,实现在一台服务器上运行多个网站

配置apache虚拟主机,实现在一台服务器上运行多个网站 apache虚拟主机实现有三种方法: 1.通过不同的IP地址 2.通过不同的域名 3.通过不同的端口号 三种都需要把虚拟主机功能打开: [[email protected] ~]# vim /etc/httpd/conf/httpd.conf 改: #NameVirtualHost *:80 为: NameVirtualHost *:80 方法1:通过不同的IP地址,解析不同的域名 给服务器增加IP(另一个域名解析) [[email pr

PHP中级篇 Apache配置httpd-vhosts虚拟主机总结及注意事项

经常使用Apache虚拟主机进行开发和测试,但每次需要配置虚拟主机时都习惯性的ctrl+c和ctrl+v,这次由于重装系统,需要配置一个新的PHP开发环境虚拟主机,于是总结一下Apaceh配置httpd-vhosts虚拟主机使用方法和步骤,便于查找和使用. 开发环境:WAMP网址:http://www.wampserver.com/en/ 实例一,Apaceh配置localhost虚拟主机步骤1,用记事本打开apache目录下httpd.conf文件(如:D:\wamp\bin\apache\a