我正在使用CentOS在VPS上部署rails应用程序.我安装了宝石安装乘客的乘客.为了安装Nginx,我使用了rvmsudo passenger-install-Nginx-module.
server {
listen 80;
server_name my-ip-address;
location / {
root /home/deploy/repos/application-name/public;
passenger_enabled on;
rails_env production;
}
...
}
当我执行sudo service Nginx status时,我得到以下信息:
Nginx (pid 21015 21014) is running...
这表明Nginx正在运行.
但我得到这个网页在浏览器上不可用.
当我使用rails s在开发模式下使用rails服务器并尝试使用my-ip-address检查浏览器时,即使我得到相同的结果:3000
任何人都可以帮助解决可能存在的问题吗?
当我运行命令passenger-config restart-app时,结果是:
Phusion Passenger is currently not serving any applications
我是否需要建议这是Nginx或乘客的问题?
还有一个问题是 –
如果我的乘客安装不正确但Nginx安装正确,那么我能否看到“欢迎来到Nginx页面”?
更新:
我试着在后台运行乘客启动-p 3000 -d -e生产.现在,如果我做乘客身份,我会得到两个乘客实例,其中一个说Phusion Passenger目前没有提供任何应用程序,另一个显示如下:
Version : 5.0.21
Date : 2016-01-16 10:42:42 +0530
Instance: feOajf7V (Nginx/1.8.0 Phusion_Passenger/5.0.21)
----------- General information -----------
Max pool size : 6
App groups : 1
Processes : 1
Requests in top-level queue : 0
----------- Application groups -----------
/home/deploy/repos/application-name/public (production):
App root: /home/deploy/repos/application-name
Requests in queue: 0
* PID: 22003 Sessions: 0 Processed: 0 Uptime: 4m 17s
cpu: 0% Memory : 36M Last used: 4m 17s ago
如果我运行passenger-config restart-app,我得到的结果如下:
Please select the application to restart.
‣ /home/deploy/repos/application-name/public (production)
Cancel
这是否意味着乘客工作正常?但我看到浏览器中没有网页.
解决方法:
我想你没有在你项目的目录中运行乘客.
在项目的根目录中键入:
passenger start -p <port>
其中< port>是您要运行应用程序的端口(例如:8000).
UPDATE
根据您的问题和下面的评论中的更新,问题似乎不在于Nginx或乘客的配置.由于您尝试不是在本地访问服务器,而是使用VPS的真实IP,因此有问题的端口可能无法打开.你可以检查一下here.