Skip to content

Latest commit

 

History

History
55 lines (39 loc) · 2.23 KB

Troubleshooting.md

File metadata and controls

55 lines (39 loc) · 2.23 KB

トラブルシューティング

デプロイを実行したとき、デプロイは成功しているのに新しいスクリプトではなく古いスクリプトが稼働してしまいます。

PHP5.5は、ビルトインでOPcacheをもっています。OPcacheはスクリプトが変更された場合には破棄されるはずですが、スクリプトがシンボリックリンクされたフォルダーでWEBサーバーから参照されている場合には問題があります。

基本的に、OPcacheは、/var/www/hello/current/public/indexを実在のスクリプトであると"認識"します。実際には /var/www/hello/releases/20140101011/public/indexであるのにです。

この問題を解決するには、デプロイの後に、以下のコマンドを追加します。

php -r "opcache_reset();"

注意: もし、PHP-FPMとnginxを使っている場合には、上記コマンドは、CLIのキャッシュのみ削除し、FPMのものは削除しません。

この場合、問題を修正するには以下の行をnginxサーバーの設定ファイルに加えます。

fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
fastcgi_param DOCUMENT_ROOT $realpath_root;

通常、このファイルは、/etc/nginx/fastcgi.confにあります。