Linux 关于 Apache 服务器的配置

Linux 关于 Apache 服务器的配置

通过 Apache 搭建 web静态服务器

环境准备

#安装httpd
yum -y install httpd
#安装字符界面下的浏览器客户端:elinks
yum install -y elinks

实验步骤

启动服务

  • 在/var/www/html (默认主目录中) 创建主页文件(index.html)
  • 启动httpd服务
    • systemlctl start httpd
  • 使用浏览器或者elinks方式访问本机ip
    • elinks 127.0.0.1
  • 看到主页即说明配置成功

创建虚拟主机

  • 在/var/www/html (默认主目录中) 创建目录1 (bai1) 和目录2 (bai2)
  • 在目录1和2中分别创建主页文件创建主页文件(index.html)
  • 给网卡绑定两个虚拟ip
    • 本文绑定的虚拟ip为(192.168.198.10、192.168.198.20)
    • 虚拟机的网卡名字为ens33
ifconfig ens33:1 192.168.198.10
ifconfig ens33:2 192.168.198.20
  • 更改httpd服务配置文件,在其中加入两个虚拟主机的配置文件
    • vim /etc/httpd/conf/httpd.conf
<VirtualHost 192.168.198.10>
	DocumentRoot /var/www/html/bai1
	<Directory "/var/www/html/bai1">
		AllowOverRide none
		Require all granted
	</Directory>
</VirtualHost>

<VirtualHost 192.168.198.20>
	DocumentRoot /var/www/html/bai2
	<Directory "var/www/html/bai2">
		AllowOverRide none
		Require all granted
	</Directory>
</VirtualHost>

  • 重启httpd服务
    • systemctl restart httpd
  • 使用浏览器或者elinks方式访问虚拟主机
    • elinks 192.168.198.10
    • elinks 192.168.198.20
  • 看到主页内容即配置成功

基于端口的虚拟主机配置

  • 临时关闭selinux防火墙
    • setenforce 0
  • 在/var/www/html (默认主目录中) 创建目录1 (bai88) 和目录2 (bai8081)
  • 在目录1和2中分别创建主页文件创建主页文件(index.html)
  • 给网卡绑定一个虚拟ip
    • 本文绑定的虚拟ip为(192.168.198.10、192.168.198.20)
    • 虚拟机的网卡名字为ens33
ifconfig ens33:1 192.168.198.100
  • 更改httpd服务配置文件,在其中加入两个虚拟主机的配置文件
    • vim /etc/httpd/conf/httpd.conf
<VirtualHost 192.168.198.100:88>
	DocumentRoot /var/www/html/bai88
	<Directory "/var/www/html/bai88">
		AllowOverRide none
		Require all granted
	</Directory>
</VirtualHost>

<VirtualHost 192.168.198.100:8081>
	DocumentRoot /var/www/html/bai8081
	<Directory "var/www/html/bai8081">
		AllowOverRide none
		Require all granted
	</Directory>
</VirtualHost>
  • 额外监听端口本文中使用88和8081
Listen 88
Listen 8081
  • 重启httpd服务
    • systemctl restart httpd
  • 使用浏览器或者elinks方式访问虚拟主机
    • elinks 192.168.198.100:88
    • elinks 192.168.198.100:8081
  • 看到主页内容即配置成功

使用DNS服务器解析到域名

  • 在named配置文件中正向解析两个域名到web服务ip
$TTL 1D
@	IN SOA	xiaobai.com. rname.invalid. (
					0	; serial
					1D	; refresh
					1H	; retry
					1W	; expire
					3H )	; minimum
	NS	dns.xiaobai.com.
dns	A	192.168.198.129
www	A	192.168.198.128
bai1	A	192.168.198.10
bai2	A	192.168.198.20
bai	A	192.168.198.100

192.168.198.129为本机ip
192.168.198.10为虚拟主机1ip
192.168.198.20为虚拟主机2ip
192.168.198.100为虚拟主机3ip 绑定端口88和端口8081


2023.10.26新增

  • ifconfig ens33:3 192.168.198.30 挂载新的虚拟主机
  • 在vim /etc/httpd/conf/httpd.conf 中增加新的文件夹及其index.html网页

在httpd服务配置文件中vim /etc/httpd/conf/httpd.conf增加域名级虚拟主机

<VirtualHost 192.168.198.30>
	DocumentRoot /var/www/html/bainew1
	ServerName new1.bai.com
</VirtualHost>
<VirtualHost 192.168.198.30>
	DocumentRoot /var/www/html/bainew2
	ServerName new2.bai.com
</VirtualHost>

在正向数据库解析文件vim /var/named/named. localhost中配置两个域名访问一个ip

$TTL 1D
@       IN SOA  xiaobai.com. rname.invalid. (

        NS      dns.xiaobai.com.
dns     A       192.168.113.129
www     A       192.168.113.128
new1    A       192.168.198.30
new2    A       192.168.198.30
  • 重启服务
    • systemctl restart named