Nginx配置虚拟主机的三种方法

2023-12-01 0 630
目录
  • 一、基于域名的虚拟主机
  • 二、基于端口的虚拟主机
  • 三、基于IP的虚拟主机
  • 四、Nginx代理

虚拟主机使用的是特殊的软硬件技术,把一台运行在因特网上的服务器主机分成一台台 “虚拟” 的主机,每台虚拟主机都可以是一个独立的网站,可以具有独立的域名,具有完成的Intemet服务器功能(WWW、FTP、Email等),同一台主机上的虚拟主机之间是完全独立的。从网站访问者的角度来看,每一台虚拟主机和一台独立的主机完全一样。

利用虚拟主机,可以在同一台服务器,同一组Nginx进程上运行多个网站的功能。不用为每个要运行的网站提供一台单独的Nginx服务器或单独的一组Nginx进程。

虚拟主机的配置主要有以下三种:

一、基于域名的虚拟主机

进入conf/nginx.conf配置文件中添加server属性,示例如下:一个域名对应一个ip地址,一个ip地址可以被多个域名绑定。域名的目的是便于记忆和沟通的一组服务器的地址(网站,电子邮件,FTP等)。

server {
#检测默认的80端口
listen 80;
#我们测试的是域名映射,所以这个配置是重点,也是外部访问的地址
server_name virtual.test.com;
#如果配置的默认/,则访问项目时,输入虚拟域名即可
location / {
#默认访问的是nginx根目录下的virtual.test/html目录中的index.html
root virtual.test/html;
index index.html;
}
}

测试前准备:1)、添加本地域名映射,修改HOSTS(C:\\Windows\\System32\\drivers\\etc)文件,在文件未添加IP域名(举例:192.168.88.130 virtual.test.com)2)、在nginx根目录下创建root所配置的文件夹virtual.test/html(全路径展示:/usr/install/nginx/virtual.test/html)3)、在此目录下创建index.html文件即可。

<html>
<head>
<meta http-equiv=\”Content-Type\” content=\”text/html; charset=utf-8\” />
</head>
<body>
<h2>虚拟主机测试页面-index</h2>
</body>
</html>

4)、访问http://virtual.test.com/

Nginx配置虚拟主机的三种方法

二、基于端口的虚拟主机

只需将server中的listen属性设置为目标端口即可:

server {
#主要配置属性
listen 8089;
server_name virtual.test.com;
location / {
root virtual.test/html;
index index.html;
}
}

通过http://virtual.test.com:8089/也可以访问目标文件:

Nginx配置虚拟主机的三种方法

三、基于IP的虚拟主机

将server_name修改为虚拟机的IP地址即可:

server {
listen 8089;
#修改为虚拟机的IP地址
server_name 192.168.88.130;
location / {
root html;
index index.html index.htm;
}
}

通过IP地址访问目标项目测试如下:

Nginx配置虚拟主机的三种方法

四、Nginx代理

根据项目名称,将请求发送给对应的服务器,匹配规则如下:【1】=严格匹配:如果这个查询匹配,那么将停止搜索并立即处理此请求;【2】~为区分大小写匹配(可用正则表达式);【3】!~为区分大小写不匹配【4】~*为不区分大小写匹配(可用正则表达式)【5】!~*为不区分大小写不匹配【6】^~如果把这个前缀用于一个常规字符串,那么告诉nginx 如果路径匹配那么不测试正则表达式。

示例:

server {
listen 9001;
server_name localhost;
location ~ /edu/ {
proxy_pass http://localhost:8101;
}
location ~ /oss/ {
proxy_pass http://localhost:8102;
}
}

总结:在 Nginx下配置虚拟主机 vhost 非常方便。主要在 Nginx 的配置文件 nginx.conf 中添加一个 server 即可。使用基于域名的虚拟主机配置是比较流行的方式,可以在同一个IP上配置多个域名并且都通过80端口访问。由于基于IP地址的虚拟主机需要添加网络接口 使用不广泛。

到此这篇关于Nginx配置虚拟主机的三种方法的文章就介绍到这了,更多相关Nginx配置虚拟主机内容请搜索悠久资源以前的文章或继续浏览下面的相关文章希望大家以后多多支持悠久资源!

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

悠久资源 Nginx服务器 Nginx配置虚拟主机的三种方法 https://www.u-9.cn/server/nginx/8490.html

常见问题

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务