【发布时间】:2011-06-03 05:09:28
【问题描述】:
我有一个在端口 8080 上运行的 Rails 应用程序,我需要欺骗它以为它在端口 80 上运行。
我在端口 80 上运行 Varnish 并将请求转发到端口 8080 上的 nginx,但是当用户尝试使用 OmniAuth 登录并且 Devise gem 生成一个 url 以重定向回服务器时,它认为它已开启然后用户将看到的端口 8080。
有什么办法可以欺骗 Rails 应用程序将端口硬编码为 80(我认为这是一种不好的做法),或者让 nginx 转发请求,就好像它在端口 80 上运行一样?
由于我没有为 Rails 应用程序运行 nginx 代理,所以我想不出欺骗端口的方法。
以前有没有人遇到过这个问题,如果有,需要什么样的配置来解决它?
提前致谢!
编辑: nginx 和 Varnish 都运行在同一台服务器上。
【问题讨论】:
标签: ruby-on-rails nginx port varnish