部署虚拟web主机

2023-12-17 18:28:44

1、关闭防火墙、selinux

修改防火墙默认区域判定规则为trusted允许任何访问

[root@nb conf.d]# firewall-cmd --set-default-zone=trusted

临时关闭selinux

[root@nb conf.d]# setenforce 0
永久关闭selinux

[root@nb conf.d]# sed -i '/^SELINUX/s/enforcing/disabled/' /etc/selinux/config

2、部署虚拟主机网页文档

[root@nb conf.d]# mkdir /var/www/virtual/
[root@nb conf.d]# echo "xixi" > /var/www/virtual/index.html

3、创建虚拟主机部署文件


[root@nb conf.d]# vim /etc/httpd/conf.d/01-www0.conf

<VirtualHost ?*:80>
? ? ? ? ServerName www0.example.com
? ? ? ? DocumentRoot /var/www/virtual
</VirtualHost>

4、完善原始站点

一旦启动虚拟站点机制后:

外部的DocumentRoot、ServerName会被忽略

第一个虚拟站点被视为默认站点,若客户机请求的URL不属于任何已知的站点,则由第一个站点相应

[root@nb conf.d]# vim /etc/httpd/conf.d/00-default.conf

<VirtualHost *:80>
? ? ? ? ServerName server0.example.com
? ? ? ? DocumentRoot /var/www/html
</VirtualHost>

检查配置文件语法

[root@nb conf.d]# httpd -t
AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using fe80::4fab:57f3:d92a:3708. Set the 'ServerName' directive globally to suppress this message
Syntax OK

4、配置主机映射文件

[root@nb conf.d]# vim /etc/hosts

192.168.10.128 server0.example.com www0.example.com

5、验证

重启服务

[root@nb conf.d]# systemctl restart httpd
[root@nb conf.d]# elinks -dump http://www0.example.com
? ?xixi
[root@nb conf.d]# elinks -dump http://server0.example.com
? ?iloveyou
总结

1、HTTP:超文本传输协议,主要为网站服务器程序与浏览器之前传输网页定义相关标准;

HTML:超文本标记语言,是静态网页文件的标记规范;

2、基于域名的多个虚拟web主机配置内容

vim /etc/httpd/conf.d/httpd.conf
<VirtualHost IP地址:端口>
    ServerName dns名称
    DocumentRoot  网页根目录
</VirtualHost>

3、配置通过NFS共享/usr/src目录,允许任何人访问

vim /etc/exports
/usr/src      *(ro)

systemctl restart nfs-server

4、selinux不关情况下如何启动8090端口

semanage port命令是用来查询与修改SELinux默认端口的安全上下文;

semanage port命令中常用参数以及作用如下:

  • -l:查询所有定义的端口。
  • -a:添加新的记录。
  • -m:修改记录。
  • -d:删除记录。
  • -t:添加的类型。
  • -p:指定添加的端口是tcp或udp协议的。
semanage port -a -t http_port_t -p tcp 8090

文章来源:https://blog.csdn.net/m0_57740456/article/details/132752623
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。