nginx如何配置同一個端口轉(zhuǎn)發(fā)多個項目
更新時間:2024年01月26日 10:52:01 作者:萬山寒
這篇文章主要介紹了nginx如何配置同一個端口轉(zhuǎn)發(fā)多個項目問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
nginx配置同一個端口轉(zhuǎn)發(fā)多項目
nginx一般都是一個轉(zhuǎn)發(fā)多個項目,所以需要學(xué)會配置這個
方式一
- 配置多個server 監(jiān)聽端口,這種方法會占用好多個端口
方式二
- 配置靜態(tài)資源root的alias項
- 配置不同前端靜態(tài)資源訪問不同后端,這里是用 # proxy_pass “http://ip:port/” 結(jié)尾的"/“,帶上和不帶是兩種效果,去掉”/“,那么路徑將接上location 正則匹配的路徑,帶上”/",就不會加上。
配置文件
#user nobody;
worker_processes 8;
#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
#pid logs/nginx.pid;
events {
worker_connections 2048;
}
http {
include mime.types;
default_type application/octet-stream;
proxy_intercept_errors on;
#tomcat未啟動時
fastcgi_intercept_errors on;
sendfile on;
keepalive_timeout 65;
# 實例一的ip端口配置
upstream testStream01 {
server 127.0.0.1:8090;
}
# 實例二的ip端口配置
upstream testStream02 {
server 127.0.0.1:8091;
}
server {
listen 8080;
server_name localhost;
#gzip on;
#gzip_http_version 1.1;
#gzip_comp_level 9;
#gzip_vary on;
#gzip_types text/plain application/json application/x-javascript application/css application/xml application/xml+rss text/javascript application/x-httpd-php image/jpeg image/gif image/png image/x-ms-bmp;
location / {
root /usr/share/nginx/html/test;
index login.html index.htm;
}
# 實例一的前端頁面,主要root 要換成alias
location /project01 {
# 多個前端項目,需要使用alias
alias /usr/share/nginx/html/project01;
index login.html index.htm;
}
# 實例二的前端頁面
location /project02 {
alias /usr/share/nginx/html/project02;
index login.html index.htm;
}
# 開放靜態(tài)資源
# location ^/project01/.*\.(jpg|jpeg|gif|png|ico|css|js|pdf|txt)$
# {
# alias /usr/share/nginx/html/project01/;
# proxy_temp_path /usr/share/nginx/html/project01/;
# }
# 前端請求后端的地址,將會= ip:port/project01 ,所以這里要去掉project01,
# 實例一的后端配置,主要看proxy_pass
location /project01/testServer {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_read_timeout 3600s;
# proxy_pass "http://testStream01/" 結(jié)尾的"/",帶上和不帶是兩種效果,去掉"/",那么路徑將接上正則匹配的"/project01/testServer",帶上"/",就不會加上。
proxy_pass http://testStream01/testServer;
# rewrite ^/project01/testServer(.*)$ /testStream01/$1 last;
}
# 實例二的后端配置,主要看proxy_pass
location /project02/testServer {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_read_timeout 3600s;
proxy_pass http://testStream02/testServer;
}
}
}
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
國外著名論壇程序IPB(Invision Power Board)在nginx下的配置示例
這篇文章主要介紹了國外著名論壇程序IPB(Invision Power Board)在nginx下的配置示例,使用fastcgi配置模式,需要的朋友可以參考下2014-07-07
Nginx服務(wù)器中瀏覽器本地緩存和虛擬機的相關(guān)設(shè)置
這篇文章主要介紹了Nginx服務(wù)器中瀏覽器本地緩存和虛擬機的相關(guān)設(shè)置,是Nginx服務(wù)器搭建過程中的基本配置,需要的朋友可以參考下2015-08-08

