python – 与gunricorn nginx的Flask重定向(url_for)错误
我的烧瓶应用程序中的重定向(url_for)函数出现问题. 任何重定向(url_for(“index”))行都会将应用程序从domain.com/app重定向到ip-addr / app,其中ip-addr是我自己的客户端机器ip,而不是服务器的. 这让我很困惑,我不知道问题究竟发生在哪里,因为它只发生在服务器而不是任何本地测试. 细节: 我正在使用此处找到的反向代理设置http://flask.pocoo.org/snippets/35/.
我有一个gunicorn运行我的烧瓶应用程序作为一个暴发户的任务. 编辑: 所以我挖了一下,发现这个git报告有类似的问题,https://github.com/omab/django-social-auth/issues/157. Nginx – Gunicorn通过localhost(127.0.0.1:1234)为Nginx服务.不幸的是,当我使用社交平台进行身份验证时,重定向URL social-auth将它们发送到127.0.0.1:1234/twitter/complete,这显然无法通过客户端的浏览器解析. 看来我的Flask应用程序没有得到备忘录来更新其重定向路由. 最佳答案 我找到了解决方案.我必须为我的所有重定向使用重定向(url_for(location,_external = True)).似乎url_for(x,_external = True)将使用我的nginx proxy_set_header中的所有变量来构造url,而url_for(x)不会这样做. 这适用于服务器和本地开发. (编辑:甘南站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- Nginx和PHP-FPM:查询参数不会传递给PHP
- node.js-矛盾的CORS错误:不存在“ Access-Control-Allow-O
- php-主要CodeIgniter应用子目录中CodeIgniter应用的Nginx重
- nginx – 仅允许某些国家/地区的流量访问特定页面
- getgrenam(“user”)在/etc/nginx/nginx.conf中失败
- Nginx在位置查询关键字匹配
- php-页面无法正确重定向Nginx
- Django uWSGI nginx url映射
- Laravel 5.3,使用api.example.com到example.com/api
- nginx – 提供由PHP生成的自定义404页面