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