2015-12-29 37 views
0

我在端口3037上運行Nginx + Thin服務器上的Rails應用程序。 這是測試服務器。重定向上的錯誤端口在Nginx + Thin服務器上運行的Rails應用程序

當我在Rails應用程序進行重定向,例如domain.com:3037/users它重定向我domain.com/users,端口80

我可以通過設置端口解決這個像這樣users_url(:port => 3037),但我不能爲每個重定向鏈接。我相信存在解決這個問題的更簡單的方法。

這是nginx的配置文件:

upstream dev_server { 
    server 127.0.0.1:9297; 
} 
server { 
    listen 3037 default_server; 
    server_name www.domain.com:3037; 
    root /full_path_to_project/public; 

    location/{ 
     proxy_pass http://dev_server; 
     proxy_http_version 1.1; 
     proxy_set_header Upgrade $http_upgrade; 
     proxy_set_header Connection "upgrade"; 
     proxy_set_header Host $host; 
    } 
+1

您可以添加您的Nginx配置文件嗎? –

+0

@ ali-sepehri-kh剛添加它。 – user3434212

回答

1

我解決它通過重寫nginx的配置文件,因爲它是在這個環節完成:http://blog.mohitkanwal.com/blog/2013/04/10/deploying-rails-on-nginx-and-thin/。下面是我的配置文件的樣子:

upstream dev_server { 
    server 127.0.0.1:9297; 
} 
server { 
    listen 3037 default_server; 
    server_name domain.com:3037 www.domain.com:3037; 
    root /full_path_to_project/public; 

    location/{ 
    proxy_set_header X-Real-IP $remote_addr; 
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
    proxy_set_header Host $http_host; 
    proxy_redirect off; 
    try_files /system/maintenance.html $uri $uri/index.html $uri.html @ruby; 
    } 

    location @ruby { 
    proxy_pass http://dev_server; 
    } 

} 
相關問題