我想将我的AWS实例的IP地址(例如52.172.33.23)设置为我的默认页面,这意味着当我在网络浏览器上放置52.172.33.23时,我的应用程序无需server_name
。所以,我设置/opt/nginx/conf/nginx.conf
喜欢,
server {
listen 80 default_server;
passenger_enabled on;
root /home/ec2-user/my_app/public;
}
但服务器运行与sudo /opt/nginx/sbin/nginx
一起使用,但我的IP地址上没有显示任何内容。
此外,我打开了port 3000
,并将listen 80 default_server;
更改为listen 3000 default_server;
52.172.33.23:3000
,而不是52.172.33.23
。另外,奇怪的是,我没有log/production.log
档。
有关于这种情况的建议,还是我可以阅读的文件?感谢
答案 0 :(得分:2)
在nginx文档中查看代理服务器。
您可以将这样的nginx文件配置为开头:
upstream backend {
server 127.0.0.1:3000;
}
server {
listen 80 default_server;
passenger_enabled on; # not sure about passenger, can try commenting out if it does not work
# root /home/ec2-user/my_app/public;
location / {
proxy_pass http://backend;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
这是我项目的配置。希望这适用于您的情况。
顺便说一句,我认为here是一个更适合询问nginx相关问题的地方。