flask - nginx 重寫路由
给我你的怀抱
给我你的怀抱 2017-05-16 17:21:44
0
3
736

nginx gunicorn flask的配置
現在我把 /demo 這個路由映射到 8088端口,怎麼重寫路由

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;
    }
}

但是這樣寫, localhost/demo還是不行,怎麼處理

给我你的怀抱
给我你的怀抱

全部回覆(3)
伊谢尔伦

訪問下 my_server/demo 試試?

小葫芦
rewrite ^/demo/(.*)$ / last;

改為

rewrite ^/demo/(.*)$ / break;

last会对server块重新发起请求,break则使用当前location中的資料來源

大家讲道理

如果說你想

/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/(.*)$ / break;
    }
}

但是這種直接在你的後台程式中處理也就可以了,因為這樣的結果就是訪問/demo/xx和訪問/xx是一樣的效果了

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!