Apahce虚拟主机配置演示

在企业的真实环境中,一台WEB服务器发布单个网站会非常浪费资源,所以一台WEB服务器一般都会发布多个网站,少则3-5个,多个10-20个网站。在一台服务器上发布多网站,也称之为部署多个虚拟主机。

WEB虚拟机主机配置方法主要为三种:

基于单个IP多个端口

基于多个IP一个端口

基于单个IP一个端口不同域名

其中,同一个端口,不同域名方式在企业中使用较为广泛。

以下演示在同一台主机:192.168.145.129,使用同一个80端口,发布两个域名网站:www.a.com和www.b.com

方法和步骤

1、创建虚拟主机配置文件httpd-vhosts.conf,该文件默认已经存在,只需要去掉httpd.conf配置文件中#号即可。

go 复制代码
[root@localhost ~]# cd /usr/local/apache2/conf/
[root@localhost conf]# ll
total 100
drwxr-xr-x. 2 root root  4096 Nov 21 11:24 extra
-rw-r--r--. 1 root root 18516 Nov 21 11:24 httpd.conf
-rw-r--r--. 1 root root 13064 Nov 21 11:24 magic
-rw-r--r--. 1 root root 60919 Nov 21 11:24 mime.types
drwxr-xr-x. 3 root root    37 Nov 21 11:24 original
[root@localhost conf]#

[root@localhost conf]# ls extra/ -l
total 68
-rw-r--r--. 1 root root  2883 Nov 21 11:24 httpd-autoindex.conf
-rw-r--r--. 1 root root  1822 Nov 21 11:24 httpd-dav.conf
-rw-r--r--. 1 root root  2942 Nov 21 11:24 httpd-default.conf
-rw-r--r--. 1 root root  1119 Nov 21 11:24 httpd-info.conf
-rw-r--r--. 1 root root  5078 Nov 21 11:24 httpd-languages.conf
-rw-r--r--. 1 root root  1397 Nov 21 11:24 httpd-manual.conf
-rw-r--r--. 1 root root  4444 Nov 21 11:24 httpd-mpm.conf
-rw-r--r--. 1 root root  2225 Nov 21 11:24 httpd-multilang-errordoc.conf
-rw-r--r--. 1 root root 13392 Nov 21 11:24 httpd-ssl.conf
-rw-r--r--. 1 root root   694 Nov 21 11:24 httpd-userdir.conf
-rw-r--r--. 1 root root  1469 Nov 21 11:24 httpd-vhosts.conf
-rw-r--r--. 1 root root  3161 Nov 21 11:24 proxy-html.conf

httpd.conf配置文件中开启虚拟主机

2、配置虚拟主机的配置文件httpd-vhosts.conf

go 复制代码
[root@localhost extra]# cp httpd-vhosts.conf httpd-vhosts.conf.bak
[root@localhost extra]# vim httpd-vhosts.conf

<VirtualHost *:80>
    ServerAdmin 77932692@qq.com
    DocumentRoot "/usr/local/apache2/htdocs/www.a.com"
    ServerName www.a.com
    #ServerAlias www.dummy-host.example.com
    ErrorLog "logs/www.a.com-error_log"
    CustomLog "logs/www.a.com-access_log" common
</VirtualHost>

<VirtualHost *:80>
    ServerAdmin 77932692@qq.com
    DocumentRoot "/usr/local/apache2/htdocs/www.b.com"
    ServerName www.b.com
    ErrorLog "logs/www.b.com-error_log"
    CustomLog "logs/www.b.com-access_log" common
</VirtualHost>

3、分别创建发布目录www.a.com和www.b.com 重启apache服务,并创建index.html页面

go 复制代码
[root@localhost apache2]# mkdir -p /usr/local/apache2/htdocs/{www.a.com,www.b.com}/
[root@localhost apache2]# ls htdocs/
index.html  www.a.com  www.b.com
[root@localhost apache2]#
[root@localhost apache2]# ./bin/apachectl restart

[root@localhost apache2]# echo "<h1> this is www.a.com Pages  </h1>" >/usr/local/apache2/htdocs/www.a.com/index.html
[root@localhost apache2]# ls /usr/local/apache2/htdocs/www.a.com/
index.html
[root@localhost apache2]#
[root@localhost apache2]# echo "<h1> this is www.b.com Pages  </h1>" >/usr/local/apache2/htdocs/www.b.com/index.html 
[root@localhost apache2]# ls /usr/local/apache2/htdocs/www.b.com/                                                   
index.html
[root@localhost apache2]#

4、测试,在浏览器输入分别输入地址www.a.com和www.b.com进行测试。

输入www.a.com

输入www.b.com

以上实现同一个ip,同一个端口访问不域名网站效果。

相关推荐
Jack黄从零学c++几秒前
自制网络连接工具(支持tcpudp,客户端服务端)
linux·c语言·开发语言·网络协议·tcp/ip·udp·信息与通信
‍理我1 小时前
Linux系统编程(基础指令)上
linux·服务器
-杀意感知-1 小时前
Linux 开发工具(vim、gcc/g++、make/Makefile)+【小程序:进度条】-- 详解
linux
周湘zx1 小时前
k8s中的存储
linux·运维·云原生·容器·kubernetes
Linux猿1 小时前
828华为云征文 | 云服务器Flexus X实例:one-api 部署,支持众多大模型
服务器·大模型·llm·华为云·flexus云服务器x实例·华为云服务器·one-api
_平凡之路_2 小时前
解决ubuntu22.04 gnome-terminal 无法启动的问题
linux·运维·python
凯子坚持 c2 小时前
0基础带你入门Linux之使用
linux·运维·服务器
hgdlip3 小时前
电脑ip会因为换了网络改变吗
服务器·网络·tcp/ip·电脑
EterNity_TiMe_3 小时前
【Linux基础IO】深入Linux文件描述符与重定向:解锁高效IO操作的秘密
linux·运维·服务器·学习·性能优化·学习方法
python-码博士3 小时前
Rosetta 一:手把手教你用Linux安装Rosetta(全网最简洁)
linux·运维·服务器