0
点赞
收藏
分享

微信扫一扫

搭建web服务器

本次实验使用虚拟主机的方式搭建web服务器

一、 环境准备

1、 实验拓扑

搭建web服务器_虚拟主机

2、 设备说明

操作系统

说明

centos

web服务器

win10

测试客户端

3、 IP地址规划

操作系统

IP 1

IP 2

centos-stream

172.16.10.1/24

172.16.10.2/24

win10

172.16.20.1/24

172.16.20.2/24

3.1 配置web服务器IP地址










[root@web_server ~]# nmcli connection add con-name eth1_ip ifname eth1 ipv4.addresses 172.16.10.1/24 +ipv4.addresses 172.16.20.1/24 ipv4.method manual type ethernet
[root@web_server ~]# nmcli connection up eth1_ip

# 附带一个ansible脚本
---
- name: 给网卡配置多个IP地址
hosts: XXX
vars:
network_connections:
- name: eth1_ip
state: up
type: ethernet
interface_name: eth1
ip:
address:
- 172.16.10.1/24
- 172.16.20.1/24

tasks:
- name: 配置IP地址
include_role:
name: rhel-system-roles.network

3.2 配置win10客户端IP地址

搭建web服务器_虚拟主机_02

4、虚拟主机规划

IP+端口

域名

172.16.10.1:80

mmx01.test.com

172.16.10.1:8033

mmx02.test.com

172.16.20.1:80

mmx03.test.com

172.16.10.1:8034

mmx04.test.com

二、 实验

1、安装软件包

[root@web_server ~]# yum -y install httpd

2、 放行防火墙

[root@web_server ~]# firewall-cmd --add-service=http --permanent 
[root@web_server ~]# firewall-cmd --reload

3、 虚拟主机(端口号)

通过访问不同主机的ip地址:端口号,实现虚拟主机的配置

3.1 编辑虚拟机子配置文件

我使用两个默认的80端口和8033端口和8034端口用于创建虚拟主机

[root@web_server /etc/httpd/conf.d]# cat VirtualHost_test.conf 
<VirtualHost 172.16.10.1:80>
DocumentRoot /home/mmx/site/www/site1/
<Directory /home/mmx/site/www/site1/>
Require all granted
</Directory>
</Virtualhost>
<VirtualHost 172.16.20.1:80>
DocumentRoot /home/mmx/site/www/site2/
<Directory /home/mmx/site/www/site2/>
Require all granted
</Directory>
</Virtualhost>
Listen 8033
<VirtualHost 172.16.10.1:8033>
DocumentRoot /home/mmx/site/www/site3/
<Directory /home/mmx/site/www/site3/>
Require all granted
</Directory>
</Virtualhost>
Listen 8034
<VirtualHost 172.16.20.1:8034>
DocumentRoot /home/mmx/site/www/site4/
<Directory /home/mmx/site/www/site4/>
Require all granted
</Directory>
</Virtualhost>
# 默认值
<VirtualHost *:80>
DocumentRoot /home/mmx/site/www/site6/
<Directory /home/mmx/site/www/site6/>
Require all granted
</Directory>
</Virtualhost>

3.2 放行防火墙端口

放行对应的8033,8034端口

[root@web_server /etc/httpd/conf.d]# firewall-cmd --add-port=8033-8034/tcp --permanent 
[root@web_server /etc/httpd/conf.d]# firewall-cmd --reload

3.3 创建site目录

[root@web_server ~]# mkdir /home/mmx/site/www

3.4 设置selinux

[root@web_server ~]# semanage fcontext -a -t httpd_sys_content_t /home/mmx/site/www/
[root@web_server /etc/httpd/conf.d]# for i in {1..6}; do semanage fcontext -a -t httpd_sys_content_t /home/mmx/site/www/site$i; done
[root@web_server /etc/httpd/conf.d]# for i in {1..6}; do semanage fcontext -a -t httpd_sys_content_t /home/mmx/site/www/site$i/index.html; done
[root@web_server ~]# restorecon -Rv /home/mmx/site/www
[root@web_server ~]# semanage port -a -t http_port_t -p tcp 8033-8034
[root@web_server ~]# semanage port -l | grep http
http_cache_port_t tcp 8080, 8118, 8123, 10001-10010
http_cache_port_t udp 3130
http_port_t tcp 8033-8034, 80, 81, 443, 488, 8008, 8009, 8443, 9000
pegasus_http_port_t tcp 5988
pegasus_https_port_t tcp 5989

3.4 创建站点文件夹,编辑index.html首页

[root@web_server ~]# mkdir /home/mmx/site/www/site{1..6}
[root@web_server ~]# for i in {1..6}; do echo "this is site$i" > /home/mmx/site/www/site$i/index.html; done

# 查看index.html是否创建完成
[root@web_server ~]# cat /home/mmx/site/site1/index.html
this is site1
[root@web_server ~]# cat /home/mmx/site/site2/index.html
this is site2
[root@web_server ~]# cat /home/mmx/site/site3/index.html
this is site3
[root@web_server ~]# cat /home/mmx/site/site4/index.html
this is site4
...

3.5 启动httpd服务

[root@web_server ~]# systemctl enable httpd --now 
# 检查服务状况
[root@web_server ~]# systemctl status httpd
● httpd.service - The Apache HTTP Server
Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled; vendor preset: disabled)
Active: active (running) since Thu 2023-02-02 01:31:09 CST; 1min 8s ago
Docs: man:httpd.service(8)
Main PID: 1850 (httpd)
Status: "Total requests: 2; Idle/Busy workers 100/0;Requests/sec: 0.0339; Bytes served/sec: 23>
Tasks: 213 (limit: 23656)
Memory: 38.0M
CGroup: /system.slice/httpd.service
├─1850 /usr/sbin/httpd -DFOREGROUND
├─1852 /usr/sbin/httpd -DFOREGROUND
├─1853 /usr/sbin/httpd -DFOREGROUND
├─1854 /usr/sbin/httpd -DFOREGROUND
└─1855 /usr/sbin/httpd -DFOREGROUND

Feb 02 01:31:08 web_server systemd[1]: Starting The Apache HTTP Server...
Feb 02 01:31:09 web_server httpd[1850]: AH00558: httpd: Could not reliably determine the server's >
Feb 02 01:31:09 web_server systemd[1]: Started The Apache HTTP Server.
Feb 02 01:31:13 web_server httpd[1850]: Server configured, listening on: port 8034, port 8033, por>

3.6 在win10上进行测试

搭建web服务器_WEB服务器搭建_03

搭建web服务器_WEB服务器搭建_04

搭建web服务器_虚拟主机_05

搭建web服务器_虚拟主机_06

4、 虚拟主机(域名)

1、 编辑虚拟机子配置文件

使用mmx0(1~4).test.com作为虚拟主机的访问域名

[root@web_server /etc/httpd/conf.d]# cat VirtualHost_test.conf 
<VirtualHost 172.16.10.1:80>
DocumentRoot /home/mmx/site/www/site1/
ServerName mmx01.test.com
<Directory /home/mmx/site/www/site1/>
Require all granted
</Directory>
</Virtualhost>
<VirtualHost 172.16.20.1:80>
DocumentRoot /home/mmx/site/www/site5/
ServerName mmx02.test.com
<Directory /home/mmx/site/www/site5/>
Require all granted
</Directory>
</Virtualhost>
<VirtualHost 172.16.20.1:80>
DocumentRoot /home/mmx/site/www/site2/
ServerName mmx03.test.com
<Directory /home/mmx/site/www/site2/>
Require all granted
</Directory>
</Virtualhost>
Listen 8033
<VirtualHost 172.16.10.1:8033>
DocumentRoot /home/mmx/site/www/site3/
<Directory /home/mmx/site/www/site3/>
Require all granted
</Directory>
</Virtualhost>
Listen 8034
<VirtualHost 172.16.20.1:8034>
DocumentRoot /home/mmx/site/www/site4/
<Directory /home/mmx/site/www/site4/>
Require all granted
</Directory>
</Virtualhost>
# 默认值
<VirtualHost *:80>
DocumentRoot /home/mmx/site/www/site6/
<Directory /home/mmx/site/www/site6/>
Require all granted
</Directory>
</Virtualhost>

2、 编辑hosts文件

C:\Windows\System32\drivers\etc/hosts.

搭建web服务器_虚拟主机_07

3、测试

搭建web服务器_WEB服务器搭建_08

搭建web服务器_虚拟主机_09

举报

相关推荐

0 条评论