Heim > Fragen und Antworten > Hauptteil
Nginx + Gunicorn + Flask-Konfiguration
Jetzt ordne ich die /demo-Route dem Port 8088 zu, wie man die Route umschreibt
server {
listen 80;
server_name my_server;
location /demo {
proxy_set_header X-Forward-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_pass http://127.0.0.1:8088;
rewrite ^/demo/(.*)$ / last;
}
}
Aber wenn ich es so schreibe, funktioniert localhost/demo immer noch nicht.
高洛峰2017-05-16 17:23:44
rewrite ^/demo/(.*)$ /$1 last;
改为
rewrite ^/demo/(.*)$ /$1 break;
last
会对server
块重新发起请求,break
则使用当前location
中的数据源
大家讲道理2017-05-16 17:23:44
如果说你想
/demo代理到8088, /demo/xx代理到 8088/xx
的话,可能就需要这样了:
server {
listen 80;
server_name my_server;
location / {
proxy_set_header X-Forward-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_pass http://127.0.0.1:8088;
rewrite ^/demo/(.*)$ /$1 break;
}
}
但是这种直接在你的后台程序中处理也就可以了,因为这样的结果就是访问/demo/xx和访问/xx是一样的效果了