Nginx 虚拟主机

这篇具有很好参考价值的文章主要介绍了Nginx 虚拟主机。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

优质博文 IT-BLOG-CN

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

利用虚拟主机,可以在同一台服务器,同一组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地址的虚拟主机需要添加网络接口 使用不广泛。文章来源地址https://www.toymoban.com/news/detail-402904.html

到了这里,关于Nginx 虚拟主机的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Nginx网络服务——虚拟主机设置

    相比较Apache的虚拟主机设置,Nginx的设置是十分简便的只需要修改主配置中的相关配置就能实现虚拟主机的效果 echo \\\"192.168.190.40 www.gundam.com www.noelle.com\\\" /etc/hosts   ifconfig ens33:0 192.168.190.42 netmask 255.255.255.0  

    2024年02月08日
    浏览(48)
  • CentOS7---Nginx安装并配置虚拟主机

    源码包的获取:http://nginx.org/download/ 实验环境:和企业环境类似,关闭防火墙,禁用selinux,使用静态IP地址 Tengine是由淘宝网发起的Web服务器项目。它在Nginx的基础上,针对大访问量网站的需求,添加了 很多高级功能和特性。Tengine的性能和稳定性已经在大型的网站如淘宝网,

    2023年04月16日
    浏览(46)
  • Linux学习之nginx虚拟域名主机,lsof和netstat命令查看端口是否被监听

    需要先参考我的博客《Linux学习之Ubuntu 20.04在https://openresty.org下载源码安装Openresty 1.19.3.1,使用systemd管理OpenResty服务》安装好 Openresty 。 虚拟域名可以使用让不同的域名访问到同一台主机。 cd /usr/local/openresty 切换当前访问目录到 /usr/local/openresty 。 在 /usr/local/openresty/nginx/co

    2024年02月11日
    浏览(46)
  • windows虚拟主机和linux虚拟主机的区别有哪些?

    很多个人站长和中小企业在做网站的时候,会选择虚拟主机。虚拟主机用的操作系统多为Windows系统,很多人一提到操作系统立马联想到Windows系统。其实除了Windows系统外,还有很多的操作系统。其中Linux系统是其中的佼佼者。 1、操作系统 windows虚拟主机则是由windows系统的服务

    2024年01月20日
    浏览(50)
  • 对于主机ping不通虚拟机,虚拟机可以ping通主机之解决方法

    看了一下主机win10的防火墙关了,公用网络也设置成了私有网络,也重启了vmnet8,ip地址也手动设置了,但是无法ping通,经过查阅,发现是虚拟机的防火墙还没有设置,于是将win7的防火墙关闭:   再次通过主机Ping虚拟机即可:     

    2024年02月12日
    浏览(48)
  • 虚拟机可以ping通主机,主机无法ping通虚拟机的解决方法

    关闭虚拟机防火墙 关闭防火墙后就可以ping通了 如何还无法ping通,将虚拟机重新启动后再尝试。 再次要ping 虚拟机的时候又ping不通了,搞了好久终于发现,只要将网络连接中的VMnet8禁用再重启就可以了。

    2024年02月13日
    浏览(46)
  • 关于虚拟机能ping通主机,而主机不能ping通虚拟机的问题

            Ping不通虚拟机或者主机这个问题恐怕让很多同学头疼吧?如果你是关于标题的问题,可以参考一下,如果是其他问题请移步其他博客。当然也欢迎大家前来阅读指正!第一次写,写的不好的地方大家多包涵!         这个问题是我在安装完Vmware虚拟机(15版本或

    2023年04月08日
    浏览(52)
  • Tomcat虚拟主机

    在Windows下的C:WindowsSystem32driversetc中的hosts文件中添加 tomcat_ip www.a.com www.b.com 重启服务

    2024年02月14日
    浏览(51)
  • 第8章 虚拟主机

    虚拟主机,就是把一台物理服务器划分成多个“虚拟”的服务器,这样我们的一台物理服务器就可以当做多个服务器来使用,从而可以配置多个网站。 Nginx提供虚拟主机的功能,就是为了让我们不需要安装多个Nginx,就可以运行多个域名不同的网站。 Nginx下,一个server标签就

    2024年02月03日
    浏览(45)
  • 三、ngxin虚拟主机

    多个域名 再一个服务器上 理论上 端口 域名 主机ip网卡 有一个不一样,则就可以做为一个新的页面 server 要写在http 模块中 listen 90; 就是指定端口号 server_name localhost; 指定了访问的主机 localhost 这里访问的是本地主机 root /www/html/my90;指定了 访问的目录 index index.html index.htm; 指

    2024年01月17日
    浏览(53)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包