tomcat 仮想ホスト内の Coldfusion プロジェクトを更新するように capistrano を正常に構成しました。
問題は、Tomcat が capistrano によってリンクされた新しい「現在の」ディレクトリを認識せず、Tomcat が古いディレクトリを認識していることです。
ディレクトリを更新してファイルを検索するように tomcat に指示する方法はありますか? 唯一の解決策は tomcat を再起動することであり、展開のたびにこれを回避する方法が必要です。
tomcat 仮想ホスト内の Coldfusion プロジェクトを更新するように capistrano を正常に構成しました。
問題は、Tomcat が capistrano によってリンクされた新しい「現在の」ディレクトリを認識せず、Tomcat が古いディレクトリを認識していることです。
ディレクトリを更新してファイルを検索するように tomcat に指示する方法はありますか? 唯一の解決策は tomcat を再起動することであり、展開のたびにこれを回避する方法が必要です。
Tomcatのドキュメンテーションが言うように:
「シンボリック リンクが docBase に使用されている場合、シンボリック リンクへの変更は、Tomcat の再起動後、またはコンテキストのアンデプロイと再デプロイによってのみ有効になります。コンテキストのリロードは十分ではありません。」
そのため、標準的な方法でカピストラーノを使用しても機能せず、Tomcat を再起動する必要があります。
回避策は、「運用」ディレクトリを配置ディレクトリ内に配置し、配置後に現在のディレクトリと rsync することです。
task :after_deploy do
run "rsync -a #{release_path}/* /your/www/directory/production/"
end
これにより、Tomcat を再起動する必要はありません。