4
多個應用程序我試圖跨越多個上游服務器路由流量上nginx的,像這樣:關於nginx的
upstream app_a {
server unix:/tmp/app_a.sock fail_timeout=10;
# For a TCP configuration:
# server localhost:8000 fail_timeout=0;
}
server {
#listen 80; ## listen for ipv4; this line is default and implied
#listen [::]:80 default ipv6only=on; ## listen for ipv6
index index.html index.htm;
server_name localhost;
root /home/ubuntu/app_a/www/staging/static;
location ~ ^/app_a/(.*)$ {
try_files $1 @proxy_to_app_a;
}
location @proxy_to_app_a {
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_redirect off;
proxy_pass http://app_a;
}
不幸的是,應用程序有沒有完整的URI的知識,希望可以坐在根 - 這意味着我需要重新寫的URI傳遞給應用程序,這就是爲什麼我認爲這可能工作時:
location ~ ^/app_a/(.*)$ {
try_files $1 @proxy_to_app_a;
}
應用程序工作正常,如果位置剛好/
(因爲上述根問題),但這種正則表達式基於網絡的解決方案似乎不起作用。我需要做什麼,因此該應用在url中獲取/
而不是app_a
?
感謝
謝謝!作品魅力! – malangi