nginx passenger rails
By admin
前几天去面试,有个题目是关于passenger的
我写没用过,用的是unicorn + nginx
回来之后觉得passenger实在是有必要研究一下
先gem install passenger
然后装nginx的模块
默认编译和我原来的apt装的差了好多参数
选2自己加参数,用nginx -V看看原来的参数,把合适的都加进去,默认路径就/opt/nginx好了
参数如下
–conf-path=/etc/nginx/nginx.conf –error-log-path=/var/log/nginx/error.log –http-client-body-temp-path=/var/lib/nginx/body –http-fastcgi-temp-path=/var/lib/nginx/fastcgi –http-log-path=/var/log/nginx/access.log –http-proxy-temp-path=/var/lib/nginx/proxy –lock-path=/var/lock/nginx.lock –pid-path=/var/run/nginx.pid –with-http_geoip_module –with-http_gzip_static_module –with-http_realip_module –with-http_stub_status_module –with-http_sub_module –with-mail –with-mail_ssl_module
按编译完的提示在nginx.conf里加上
passenger_root /usr/lib/ruby/gems/1.9.1/gems/passenger-3.0.11;
passenger_ruby /usr/bin/ruby1.9.1;
编译好之后把 cp /opt/nginx/sbin/nginx /usr/sbin/nginx里,就直接用了,配置文件什么的都原来的位置
在网站的配置里把我原来的unicorn的配置注释掉
加上 passenger_enabled on;
编译完了之后启动说少了libpcre.so.0
aptitude install libpcre++0
启动之后说
git://github.com/galetahub/simple-captcha.git (at master) is not checked out. Please run `bundle install` (Bundler::GitError)
bundle install 还不管用
搜了搜
用 bundle install –path vendor/
把所有环境都集成到程序里