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版本

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

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

[root@host ~]$systemctl start httpd.service
[root@host ~]$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命令访问

[root@host ~]$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
[root@host ~]$curl http://192.168.55.128    # 访问
<!DOCTYPE>
<h1>
  CentOS 7.3
</h1>

创建指定文件目录

[root@host conf.d]$mkdir -pv /web/vhosts/www1
[root@host conf.d]$mkdir -pv /web/vhosts/www2
[root@host conf.d]$mkdir -pv /var/log/httpd/www2
[root@host 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页面

[root@host conf.d]$cat /web/vhosts/www1/index.html
welcome to www1
thank you
[root@host conf.d]$cat /web/vhosts/www2/index.html
welcome to www2
thank you

重载httpd配置文件

[root@host conf.d]$httpd -t
Syntax OK
[root@host 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站点的访问状态错误

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • Centos 6中编译配置httpd2.4的多种方法详解

    前言 我们使用linux的过程中,一定会用到httpd这个服务,在centos7上,默认安装的httpd就是2.4版本,大家都知道,2.4版本相对之前的版本已经做了改进,用起来更加方便,但是我们的centos6上,默认安装的版本是2.2,那么,如果我们想要在centos6上安装httpd2.4版本的话,我们要如何做呢? 本文中,小编会给大家介绍两种方法,来实现在centos6上编译安装httpd2.4版本. 方法一 分别编译法 1.下载源码并解压缩 我们可以使用yum info httpd和yu

  • CentOS 7.2配置Apache服务httpd(上)

    一.Apache简介 Apache HTTP Server(简称Apache)是Apache软件基金会的一个开放源代码的网页服务器软件,可以在大多数电脑操作系统中运行,由于其跨平台和安全性(尽管不断有新的漏洞被发现,但由于其开放源代码的特点,漏洞总能被很快修补.因此总合来说,其安全性还是相当高的.).被广泛使用,是最流行的Web服务器软件之一.它快速.可靠并且可通过简单的API扩充,将Perl/Python等解释器编译到服务器中. 软件图标 二.安装Apache httpd 安装httpd以配置

  • CentOS下Lighttpd Web服务器安装与配置方法

    OS: CentOS release 5.5 Lighttpd: 1.4.28 安装 sudo yum install lighttpd.i386 lighttpd-fastcgi.i386 lighttpd-mod_mysql_vhost.i386 运行 检查配置文件 lighttpd -t -f lighttpd.conf 启动lighttpd服务 lighttpd -D -f lighttpd.conf 结束lighttpd服务 CTRL+C 或者使用Linux的系统服务启动停止light

  • CentOS 7.2配置Apache服务httpd(下)

    一.Perl + mod_perl 安装mod_perl使Perl脚本速度快 [1] 安装mod_perl # 从EPEL安装 [root@linuxprobe ~]# yum --enablerepo=epel -y install mod_perl [2] 配置PerlRun模式,总是将Perl解释器放在RAM上. [root@linuxprobe ~]# vi /etc/httpd/conf.d/perl.conf # line 15: 取消注释 ( check codes and out

  • 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,访问日志为

  • Mac VMware Fusion CentOS7配置静态IP的教程图解

    安装CentOS7 这里我们要安装CentOS7 64位,所以选择CentOS7 64位配置 我们点击存储后,vmware会自动帮我们创建一个虚拟机,但是我们还没有添加镜像,所以需要先将其关机 给新创建的虚拟机设置镜像 这里说一下设置成英文的原因,因为英文是更国际化的语言,设置成英文的以后系统出问题了就是英文错误提示,通过英文错误提示更容易在网络上搜到解决办法,用中文的话出错了的话比较难找到解决办法 设置时区,默认的是纽约的,这里改成中国上海 配置静态IP 1.把网络配置改成nat模式 通过Ma

  • 如何配置apache虚拟主机的实例小结

    1.基于ip地址的虚拟主机 复制代码 代码如下: Listen 80<VirtualHost 172.20.30.40>    DocumentRoot /home/httpd/html1    ServerName www.ok1.com    ErrorLog /usr/local/apache/logs/error1_log    CustomLog /usr/local/apache/logs/access1_log combined</VirtualHost><Vi

  • CentOS 7.3配置Nginx虚拟主机的方法步骤

    实验环境 一台最小化安装的CentOS 7.3虚拟机 配置基本环境 1. 安装nginx yum install -y epel-* yum isntall -y nginx vim 2. 建立虚机主机的站点根目录 mkdir /var/wwwroot mkdir /var/wwwroot/site1 mkdir /var/wwwroot/site2 echo -e "site1" >> /var/wwwroot/site1/index.html echo -e "

  • apache虚拟主机的配置指南

    一.检查apache虚拟主机模块 apache要配置虚拟主机,就需要先查看apache是否编译vhost_alias_module模块.当然apache默认是已经编译该模块的,我们可以通过以下命令查看是否已经编译模块,如下: /usr/local/apache2/bin/apachectl -M 二.开启apache虚拟主机功能 要开启apache虚拟主机功能,我们需要修改apache配置文件http.conf.打开apache的安装目录,找到httpd.conf文件,去掉Include con

  • win10 apache配置虚拟主机后localhost无法使用的解决方法

    win10系统配置虚拟主机 1.用记事本或Sublime Text打开httpd.conf ctrl + f 搜索httpd-vhosts.conf 将 #Include conf/extra/httpd-vhosts.conf 的#号去掉保存 2.打开extra/httpd-vhosts.conf 添加如下内容: <VirtualHost *:80> ServerAdmin webmaster@youremail.com DocumentRoot "E:/your_web_root

  • 详解Nginx 虚拟主机配置的三种方式(基于端口)

    Nginx配置虚拟主机支持3种方式:基于IP的虚拟主机配置,基于端口的虚拟主机配置,基于域名的虚拟主机配置. 详解Nginx 虚拟主机配置的三种方式(基于IP) https://www.jb51.net/article/14974.htm 详解Nginx 虚拟主机配置的三种方式(基于域名) https://www.jb51.net/article/14978.htm 2.Nginx基于端口的虚拟主机配置 如一台服务器只有一个IP或需要通过不同的端口访问不同的虚拟主机,可以使用基于端口的虚拟主机配

  • 给Apache虚拟主机增加端口的方法

    找到你的apache安装目录,找到httpd.conf文件,  搜索#listen这一句,在下面增加 复制代码 代码如下: listen 800      listen 801      listen 802 这里是测试,你可以根据你的需要增加不同的监听端口,好了apache web的端口开好了,我们要来配置一下虚拟主机了.    找到 复制代码 代码如下: #<virtualhost *:80> #    serveradmin webmaster@dummy-host2.phps教程hao

  • tomcat虚拟主机_动力节点Java学院整理

    对于Tomcat服务器,可以放置多个网站(多个web应用),这就是讲配置多个虚拟主机,可以看成好像有多个主机,而每个主机上有一个web应用.如同之前的文章所说的,对于Tomcat服务器来讲,在server.xml文件中,一个<Host>标签就代表着一台虚拟主机,之前的文章所用的都是默认的虚拟主机,这个在server.xml文件中是这样定义的: <Host name="localhost" appBase="webapps" autoDeploy=&

  • Apache源码安装和虚拟主机配置的教程详解

    源码安装Apache 1.上传Apache源码安装所需软件包 2.安装: 安装顺序 apr->apr-util->pcre->httpd 安装编译环境 yum -y install gcc gcc-c++ apr 编译安装 tar xzf apr-1.4.6.tar.gz cd apr-1.4.6 ./configure --prefix=/usr/local/apr make && make install apr-util 编译安装 tar xzf apr-util-

随机推荐