本實(shí)驗(yàn)旨在centos7系統(tǒng)中,httpd-2.4配置兩臺(tái)虛擬主機(jī),主要有以下要求:
(1) 提供兩個(gè)基于名稱的虛擬主機(jī):
www1.stux.com,頁面文件目錄為/web/vhosts/www1;錯(cuò)誤日志為/var/log/httpd/www1/error_log,訪問日志為/var/log/httpd/www1/access_log;
www2.stux.com,頁面文件目錄為/web/vhosts/www2;錯(cuò)誤日志為/var/log/httpd/www2/error_log,訪問日志為/var/log/httpd/www2/access_log;
(2) 通過www1.stux.com/server-status輸出其狀態(tài)信息,且要求只允許提供賬號(hào)的用戶訪問;
(3) www1不允許192.168.1.0/24網(wǎng)絡(luò)中的主機(jī)訪問;
查看系統(tǒng)版本和httpd版本
1
2
3
4
5
|
[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) |
啟動(dòng)httpd,測(cè)試能否正常運(yùn)行
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
[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 表示正常運(yùn)行 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命令訪問
1
2
3
4
5
6
7
8
9
10
11
12
|
[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 > |
創(chuàng)建指定文件目錄
1
2
3
4
|
[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 |
根據(jù)要求填寫虛擬主機(jī)配置信息
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
# path /etc/httpd/conf.d/vir.conf # 配置文件全路徑 #virtual host 1 # 虛擬主機(jī)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 # 虛擬主機(jī)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 > |
創(chuàng)建www1和www2的index頁面
1
2
3
4
5
6
|
[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配置文件
1
2
3
|
[root@host conf.d]$httpd -t syntax ok [root@host conf.d]$systemctl reload httpd.service |
修改客戶端主機(jī)的hosts文件,以便能解析域名
hosts在windows環(huán)境下的路徑為c:\windows\system32\drivers\etc。在該文件中添加兩行
192.168.55.128 www1.stux.com
192.168.55.128 www2.stux.com
訪問結(jié)果
圖1、訪問www1站點(diǎn)
圖2、訪問www2站點(diǎn)
圖3、查看www1站點(diǎn)的訪問狀態(tài)——正常
圖4、查看www2站點(diǎn)的訪問狀態(tài)錯(cuò)誤
以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持服務(wù)器之家。