Nginx同域名配置多项目 Nginx同一个域名配置多个项目的实现方法
cc_want 人气:1想了解Nginx同一个域名配置多个项目的实现方法的相关内容吗,cc_want在本文为您仔细讲解Nginx同域名配置多项目的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点:Nginx同域名配置多项目,Nginx配置同域名项目,下面大家一起来学习吧。
使用Nginx要在同一个域名下配置多个项目有两种方式:
- nginx按不同的目录分发给不同的项目
- 启用二级域名,不同的项目分配不同的二级域名
1.nginx按不同的目录分发给不同的项目:
server { listen 80; server_name example.com; location ^~ /project1 { proxy_pass http://localhost:8081; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } location ^~ /project2 { proxy_pass http://localhost:8082; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } location / { proxy_pass http://localhost:8080; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } }
这里配置了三个项目:
- http://example.com/project1路径分发到http://localhost:8081
- http://example.com/project2路径分发到http://localhost:8082
- 其他路径分发到http://localhost:8080
2.启用二级域名,不同的项目分配不同的二级域名
注意:很多同学说无效,原因是一定要先对二级域名添加A记录到主机,同一个域名可以添加N个二级域名到同一个主机
server { listen 80; server_name example.com; location / { proxy_pass http://localhost:8080; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } }
project1
server { listen 80; server_name project1.example.com; location / { proxy_pass http://localhost:8081; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } }
project2
server { listen 80; server_name project2.example.com; location / { proxy_pass http://localhost:8082; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } }
注意:这三个项目属于不同的域名,项目之间通过http访问会存在跨域问题。
加载全部内容