Linux apache常见的配置(6)实现多虚拟主机的配置
2023-02-18 16:34:38 时间
多虚拟主机
多虚拟主机:一个服务器上实现多个网站
一个服务器上建立多个网站的方法:
-
1.通过ip地址来区分
-
2.通过不同的端口号来区分
-
3.通过FQDN域名来进行区分
虚拟主机的实现:
<VirtualHost IP:PORT>
ServerName FQDN
DocumentRoot "/path"
</VirtualHost>
相关指令:
ServerAlias:虚拟主机的别名;可多次使用
ErrorLog: 错误日志
CustomLog:访问日志
<Directory "/path"> </Directory> #定义访问权限
例如:浏览器访问不同端口,得到不同的网站
[root@CentOS8 ~]# echo /var/www/html/a/index.html > /var/www/html/a/index.html
[root@CentOS8 ~]# echo /var/www/html/b/index.html > /var/www/html/b/index.html
[root@CentOS8 ~]# echo /var/www/html/c/index.html > /var/www/html/c/index.html
[root@CentOS8 ~]# echo /var/www/html/d/index.html > /var/www/html/d/index.html
[root@CentOS8 ~]# cat /etc/httpd/conf.d/virt.conf
listen 8001
listen 8002
listen 8003
<virtualhost *:8001>
documentroot /var/www/html/a
CustomLog logs/website1_access.log combined
<directory /var/www/html/a>
require all granted
</directory>
</virtualhost>
<virtualhost *:8002>
documentroot /var/www/html/b
CustomLog logs/website2_access.log combined
<directory /var/www/html/b>
require all granted
</directory>
</virtualhost>
<virtualhost *:8003>
documentroot /var/www/html/c
CustomLog logs/website3_access.log combined
<directory /var/www/html/c>
require all granted
</directory>
</virtualhost>
浏览器输入不同的ip,得到不同的网站(同一个服务器)
[root@CentOS8 ~]# ip addr add 10.0.0.24/24 dev eth0 label eth0:24
[root@CentOS8 ~]# ip addr add 10.0.0.34/24 dev eth0 label eth0:34
[root@CentOS8 ~]# ip addr add 10.0.0.44/24 dev eth0 label eth0:44
[root@CentOS8 ~]# cat /etc/httpd/conf.d/virt_ip.conf
<virtualhost 10.0.0.24:80>
documentroot /var/www/html/a #documentroot:网站的路径
CustomLog logs/website24_access.log combined
<directory /var/www/html> #文件目录授权
require all granted
</directory>
</virtualhost>
<virtualhost 10.0.0.34:80>
documentroot /var/www/html/b
CustomLog logs/website34_access.log combined
<directory /var/www/html>
require all granted
</directory>
</virtualhost>
<virtualhost 10.0.0.44:80>
documentroot /var/www/html/c
CustomLog logs/website44_access.log combined
<directory /var/www/html>
require all granted
</directory>
</virtualhost>
基于不同的FQDN得到不同的网站:
例如:
[root@CentOS8 conf.d]# cat virtual.conf
<VirtualHost *:80> #端口号
ServerName www.a.com #定义访问的FQDN
DocumentRoot "/www/a.com/htdocs"
<Directory "/www/a.com/htdocs"> #给指定的目录授权
AllowOverride None
# Allow open access:
Require all granted
</Directory>
ErrorLog "logs/a_error_log" #定义错误日志
CustomLog "logs/a_access_log" combined #定义通用日志
</VirtualHost>
[root@CentOS8 httpd]# cat /etc/hosts
10.0.0.14 www.a.com www.b.com www.c.com
[root@CentOS8 conf.d]# curl www.a.com
/www/a.com/htdocs
[root@CentOS8 conf.d]# curl www.b.com
/www/a.com/htdocs
[root@CentOS8 conf.d]# curl www.c.com
/www/a.com/htdocs
相关文章
- 网站客服系统_网页客服系统安装使用_GOFLY在线客服系统
- [GOFLY] 宝塔安装部署在线客服系统教程-在线客服系统-客服系统源码-GOFLY在线客服
- [Golang] goland开启自动格式化
- 在Visual Studio 中使用git——同步到远程服务器-下(十二)
- [Golang] fmt.Sprintf拼接字符串interface{}或其他类型
- [Golang] 解决 Goland配置GOROOT The selected directory is not a valid home for Go Sdk
- 在Visual Studio 中使用git——同步到远程服务器-上(十一)
- 在Visual Studio 中使用git——标记(Tag)管理(十)
- 在Visual Studio 中使用git——分支管理-下(九)
- [golang] windows系统搭建golang开发运行环境
- 在Visual Studio 中使用git——分支管理-上(八)
- 在Visual Studio 中使用git——浏览版本库(七)
- 在Visual Studio 中使用git——文件管理-下(六)
- 小巧的网页聊天工具提供-GOFLY在线客服系统
- 在Visual Studio 中使用git——文件管理-中(五)
- 在Visual Studio 中使用git——文件管理-上(四)
- 在Visual Studio 中使用git——使用git管理源代码(三)
- IM在线聊天软件多少钱?GOFLY在线客服系统
- [Golang] gin模板渲染-公用的头部和底部
- 在Visual Studio 中使用git——给Visual Studio安装 git插件(二)