Nginx极简入门(三)基于端口的虚拟主机配置-阿里云开发者社区

开发者社区> 章为忠学架构> 正文

Nginx极简入门(三)基于端口的虚拟主机配置

简介: 前面讲了如何配置基于IP的虚拟主机,今天讲一讲Nginx如何基于端口的虚拟主机。 需要说明的是:由于本文章是nginx系列文章中的一篇,文章里面很多其他的配置,可能前面的文章已经说讲过,然后后续就没有在介绍,如果出现有些配置没有讲,大家可能需要去看看前面的文章。
+关注继续查看

前面讲了如何配置基于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服务



版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Apache 单IP配置多个HTTPS虚拟主机
Apache 文档中提到,不能在单个 IP上同时有多个按名字识别的虚拟主机("named virtual host"),其实不完全是这样了。 使用SNI SNI全称Server Name Indication(服务器名称指示),这个问题可以解决apache中的单IP多HTTPS虚拟主机,只有默认第一个站点的SSL生效的问题。但是这些技术需要浏览器的版本支持
243 0
博客文章: Nginx虚拟主机防webshell
http://www.key0.cn/post/37.html#comment
591 0
Nginx代理应用端口丢失问题
Nginx代理应用端口丢失问题          最近使用Nginx代理weblogic的过程中发现访问了weblogic的console后,在应用跳转至登录界面时对应的端口号自动丢失了。
1035 0
【Nginx】nginx虚拟机设置
一般情况下,我们的一台机器都不会仅仅部署一个项目,那么这个时候需要我们设置虚拟机来映射多个地址的解析。 假设我们目前有一个已经设置好的nginx服务器,通过php-fpm提供服务。
667 0
+关注
章为忠学架构
获取源码、资料,请关注我的微信公众号(架构师精进)
67
文章
2
问答
文章排行榜
最热
最新
相关电子书
更多
文娱运维技术
立即下载
《SaaS模式云原生数据仓库应用场景实践》
立即下载
《看见新力量:二》电子书
立即下载