0

私はPlesk VM(public)の背後に海底のVM(プライベートネットワーク)を運営しています。nginx proxy_passとseafileプロキシの書き換え

今、私はプロキシとしてApacheを使用していますが、この設定をnginxのみで実行する方法を知りたいと思っていました。

これは動作します:

location /seafhttp { 
    rewrite ^/seafhttp(.*)$ $1 break; 
    proxy_pass http://192.168.10.102:8082; 
    client_max_body_size 0; 
    proxy_connect_timeout 36000s; 
    proxy_read_timeout 36000s; 
    proxy_send_timeout 36000s; 
    send_timeout 36000s; 
} 

location ~/{ 
    proxy_pass http://192.168.10.101:8065; 
} 

しかし、これは、再び作業を行います:

RewriteEngine On 

ProxyPass /seafhttp http://192.168.10.102:8082 
ProxyPassReverse /seafhttp http://192.168.10.102:8082 
RewriteRule ^/seafhttp - [QSA,L] 

RewriteRule ^/(.*) http://192.168.10.102:8000/$1 [P] 
ProxyPassReverse/http://192.168.10.102:8000/ 

これにはない

RewriteEngine On 

RewriteRule ^/(.*) http://192.168.10.102:8000/$1 [P] 
ProxyPassReverse/http://192.168.10.102:8000/ 

+

location /seafhttp { 
    rewrite ^/seafhttp(.*)$ $1 break; 
    proxy_pass http://192.168.10.102:8082; 
    client_max_body_size 0; 
    proxy_connect_timeout 36000s; 
    proxy_read_timeout 36000s; 
    proxy_send_timeout 36000s; 
    send_timeout 36000s; 
} 

私はここで何が欠けていますか?以下

おかげ マックス

答えて

0

修正:

location ^~ /seafhttp { 
    rewrite ^/seafhttp(.*)$ $1 break; 
    proxy_pass http://192.168.10.102:8082; 
    client_max_body_size 0; 
    proxy_connect_timeout 36000s; 
    proxy_read_timeout 36000s; 
    proxy_send_timeout 36000s; 
    send_timeout 36000s; 
} 

location ~/{ 
    proxy_pass http://192.168.10.102:8000; 
}