私はレール生産環境のnoobです。 nginxとunicornを他の(80ではなく)ポートの応答に設定できますか?私はドメインを必要としない、私は唯一のIPとポートが必要です。Railsの* _urlヘルパーは、プロダクションのカスタムポート(80ではなく)を使用しています。 (Nginx、Unicorn)
server {
listen 80;
server_name localhost;
root /home/my_app_folder/web-app/public;
client_max_body_size 32m;
location/{
try_files $uri @unicorn;
}
location @unicorn {
proxy_set_header Client-Ip $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $host;
proxy_pass http://unix:/home/my_app_folder/web-app/tmp/sockets/unicorn.sock;
}
}
私のアプリケーションの作業罰金80ポートを持つ:ここに は自分のアプリケーション(80ポート)にnginxの設定です。私はここのように、例えば3000に80を変更した場合 :
server {
listen 3000;
server_name localhost;
root /home/my_app_folder/web-app/public;
client_max_body_size 32m;
location/{
try_files $uri @unicorn;
}
location @unicorn {
proxy_set_header Client-Ip $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $host;
proxy_pass http://unix:/home/my_app_folder/web-app/tmp/sockets/unicorn.sock;
}
}
私は問題を取得します。すべて正常に動作しますが、http:// my_ip:3000にアクセスできますが、RailsのURLヘルパー(root_urlなど)にはポートがありません(http:// my_ip)。
URLヘルパーをポートで表示するにはどうすればよいですか? NginxやUnicornの設定ファイルでこれを行う方法はありますか?結局のところ、私はローカルのWebrickを実行すると、URL http://localhost:3000の形式を持ち、すべての* _urlヘルパーがポート3000でurlを返します。私はいくつかの設定ファイルを変更し、アプリケーションを別のポートに転送する必要があります。
ありがとうございました。
hey @ kasper375、これを解決しましたか? – caarlos0