相关文章推荐
温暖的酱牛肉  ·  iOS - ...·  3 月前    · 
儒雅的薯片  ·  Latest version of ...·  1 年前    · 
爱健身的木瓜  ·  constexpr (C++) | ...·  1 年前    · 

前面讲了如何配置基于IP的虚拟主机,今天讲一讲Nginx如何基于端口的虚拟主机。

需要说明的是:由于本文章是nginx系列文章中的一篇,文章里面很多其他的配置,可能前面的文章已经说讲过,然后后续就没有在介绍,如果出现有些配置没有讲,大家可能需要去看看前面的文章。

一、应用场景

一个应用服务器上,不可能只部署一个web网站;有可能会部署多个网站,这个时候就需要通过IP+端口来区分到底访问的是服务器上的那个系统。例如:我们在Nginx上提供81和82两个端口监听APP1和APP2。



二、准备环境

1. 创建192.168.78.132虚拟机,保证本地电脑和虚拟网络通畅。

2. 在192.168.78.132上安装nginx。

三、创建Web网站

将原来nginx的html目录拷贝两个目录 html81和html82,为了方便测试需要修改每个目录下的index.html内容使之个性化。

四、配置虚拟主机

修改/usr/local/nginx/conf/nginx.conf文件,添加两个虚拟主机,命令如下: vi /usr/local/nginx/conf/nginx.conf

#user  nobody;
worker_processes  1;
events {
    worker_connections  1024;
http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;
    #配置虚拟主机
    server {
        #监听的ip和端口,配置80
        listen       81;
         #虚拟主机名称这里配置ip地址
        server_name  192.168.101.3;
        #所有的请求都以/开始,所有的请求都可以匹配此location
        location / {
             #使用root指令指定虚拟主机目录即网页存放目录
             #比如访问http://ip/test.html将找到/usr/local/html3/test.html
             #比如访问http://ip/item/test.html将找到/usr/local/html3/item/test.html
            root   /usr/local/nginx/html81;
            #指定欢迎页面,按从左到右顺序查找
            index  index.html index.htm;
    #配置虚拟主机
    server {
        listen       82;
        server_name  192.168.101.3;
        location / {
            root   /usr/local/nginx/html82;
            index  index.html index.htm;
}

上面的示例,我们配置了两个虚拟主机,分别监听81和82端口。


五、验证测试

重新加载配置nginx配置文件,查看端口监听状态:

访问 http://192.168.78.132:81

image.png

访问 http://192.168.78.132:82

image.png

我们分别访问81和82端口,Nginx给我们转发到了两个不同的web网站。说明我们通过端口号,在同一个服务器上配置两个web网站成功。

最后

以上,就把nginx 基于ip的配置虚拟主机讲完了。后面会继续讲基于域名配置虚拟主机。


这是系列课程,大家关注我的微信公众号( 架构师精进 ),随时交流。



推荐阅读:

Nginx极简实战—Nginx服务器高性能优化配置,轻松实现10万并发访问量

Nginx极简入门(二)配置基于ip的虚拟主机

Nginx极简入门(一)如何在Linux系统编译安装Nginx服务



入门 - Docker将nginx容器和php容器关联起来
新建完文件后就可以开启容器了,开启后应该就正常了,访问你的服务器ip(默认就是80端口,应该就可以正常访问nginx) 然后在刚刚的主机目录/home/wwwroot/下新建一个目录default (因为在nginx里设置的默认目录,可以自己修改) 然后新建test.php 写入php代码测试运行。
Nginx 从入门到实践,万字详解!(下)
最近越来越频繁地遇到需要配置反向代理的场景,在自己搭建博客的时候,也不可避免要用到 Nginx,所以这段时间集中学习了一下 Nginx,同时做了一些笔记,希望也可以帮助到大家~ 😜 这篇文章会在 CentOS 环境下安装和使用 Nginx,如果对 CentOS 基本操作还不太清楚的,可以先看看 <半小时搞会 CentOS 入门必备基础知识> 一文先做了解。 相信作为开发者,大家都知道 Nginx 的重要,废话不多说,一起来学习吧。 Nginx 从入门到实践,万字详解!(中)
最近越来越频繁地遇到需要配置反向代理的场景,在自己搭建博客的时候,也不可避免要用到 Nginx,所以这段时间集中学习了一下 Nginx,同时做了一些笔记,希望也可以帮助到大家~ 😜 这篇文章会在 CentOS 环境下安装和使用 Nginx,如果对 CentOS 基本操作还不太清楚的,可以先看看 <半小时搞会 CentOS 入门必备基础知识> 一文先做了解。 相信作为开发者,大家都知道 Nginx 的重要,废话不多说,一起来学习吧。 Nginx 从入门到实践,万字详解!(上)
最近越来越频繁地遇到需要配置反向代理的场景,在自己搭建博客的时候,也不可避免要用到 Nginx,所以这段时间集中学习了一下 Nginx,同时做了一些笔记,希望也可以帮助到大家~ 😜 这篇文章会在 CentOS 环境下安装和使用 Nginx,如果对 CentOS 基本操作还不太清楚的,可以先看看 <半小时搞会 CentOS 入门必备基础知识> 一文先做了解。 相信作为开发者,大家都知道 Nginx 的重要,废话不多说,一起来学习吧。