apacheからnginxに乗り換える
思うところがあり、今動いているrailsアプリケーションをnginxに移している
まだまだやることはあるけど今日やった作業の備忘録を残す
環境
- CentOS6
- rails 5.0.1
yumからインストール
sudo rpm -ivh http://nginx.org/packages/centos/6/noarch/RPMS/nginx-release-centos-6-0.el6.ngx.noarch.rpm sudo yum -y install nginx
config関連作成
こちらの記事を参考にconfigを作成した
一点ハマったのは unicorn.rb
の pid '/var/www/rails/sampleApp/pids/unicorn.pid'
がこちらの環境ではフォルダが存在せず
unicorn起動時にエラーになってしまうので pid '/var/www/rails/sampleApp/tmp/pids/unicorn.pid'
と変更した
動かす
sudo service nginx start bundle exec unicorn_rails -c /home/kaneta/rails/kakin/config/unicorn.rb -E development -D
メモ
- 最初unicornをproductionで動かしたらrailsのエラーページがでるだけだった
- どうやらアセットパイプラインと言うものが絡んでそう
- developmentは自動でアセットをコンパイルする設定らしいが、productionは手動でやる必要がある
- ひとまずdevelopmentで動かす
- developmentでアセットが読み込まれない
- 自動ビルドしたアセットは
path/to/public
に置かれない? - nginxの設定では
path/to/public
しか見れないようになっている config.assets.debug = false
をconfig/environments/development.rb
に追記
- 自動ビルドしたアセットは