使用nginx的phusion乘客3.0.17运行多个rails网站
我搜索谷歌部署多个铁路网站使用Phusion乘客3.0.17与Nginx,但我没有得到相关的结果。 任何我如何通过运行passenger-install-nginx-module命令完成乘客nginx设置。
问题1)我正在寻找正确的初学者教程,使用nginx使用phusion passenger 3.0.17运行多个rails网站
问题2)我正在查看命令启动,停止,重新启动(整个乘客nginx服务器(即)为所有网站),也为(个人铁路网站)
注意:我不是在寻找乘客独立解决方案。 我正在使用REE 1.8.7和rails 2.3.14
根据Passenger的文档,您可以为每个要部署的应用程序创建一个新的虚拟主机。 并将网站root
指向您的应用程序公共目录,然后添加passenger_enabled
指令。 与使用Apache部署完全相同。
http {
...
server {
listen 80;
server_name www.mycook.com;
root /webapps/mycook/public;
passenger_enabled on;
}
...
}
更多信息:http://www.modrails.com/documentation/Users%20guide%20Nginx.html#deploying_a_ror_app
关于问题2.重新启动取决于你正在尝试做什么。 我假设你正在使用一个使用init.d
的发行版
这些是3种情况,你做了一种不同的'重新启动'。
你在Nginx上有一些配置问题。 或者它表现得很奇怪。 所以你可以像这样重新启动Nginx服务: /etc/init.d/nginx restart
接下来的案例是,你有一个在Nginx上部署乘客模块的rails或sinatra应用程序。 你想让它重新加载一些你刚刚推送到服务器的变化。 Passenger在应用程序中tmp/restart.txt
文件。 所以只需简单地运行touch tmp/restart.txt
restart.txt即可。 虽然cd进入应用程序的文件夹将告诉Passenger重新加载应用程序。
最后一次重新启动/重新加载的情况是为Nginx重新加载的。 您在添加或更改VHOST时使用此功能。 /etc/init.d/nginx reload
。 这使您可以重新加载虚拟主机和其他配置,而不会丢失连接。
在Passenger文档中有一个很大的问题,这是非常彻底的。 nginx-passenger文档
以下是关于为多个虚拟主机配置Nginx的分步教程:http://articles.slicehost.com/2007/12/7/ubuntu-gutsy-installing-nginx-via-aptitude
注意:
$ touch current/tmp/restart.txt
。 <NGINX_HOME>/bin/nginx stop
停止,然后启动<NGINX_HOME/bin/nginx
。 为了帮助你,这里是我的配置文件。
nginx.conf:
#user nobody;
worker_processes 4;
#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
#pid logs/nginx.pid;
events {
worker_connections 1024;
}
http {
passenger_root /rails/common/ruby-1.9.2-p290/lib/ruby/gems/1.9.1/gems/passenger-3.0.17;
passenger_ruby /rails/common/ruby-1.9.2-p290/bin/ruby_with_env;
passenger_max_pool_size 30;
include mime.types;
default_type application/octet-stream;
#log_format main '$remote_addr - $remote_user [$time_local] "$request" '
# '$status $body_bytes_sent "$http_referer" '
# '"$http_user_agent" "$http_x_forwarded_for"';
#access_log logs/access.log main;
sendfile on;
#tcp_nopush on;
#keepalive_timeout 0;
keepalive_timeout 65;
gzip on;
include /rails/common/nginx/conf/sites-enabled/*.conf;
}
站点启用文件夹中的示例site.conf:
server {
listen 80;
server_name domainname1.com;
root /rails/myapp1/current/public;
passenger_enabled on;
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
if (-f $document_root/system/maintenance.html) {
return 503;
}
error_page 503 @maintenance;
location @maintenance {
rewrite ^(.*)$ /system/maintenance.html break;
}
}
启用网站的新文件就是添加新网站所需的全部文件。
链接地址: http://www.djcxy.com/p/32451.html上一篇: running multiple rails websites using phusion passenger 3.0.17 with nginx