ownCloud 8にアップデートしたら、しばらくすると接続不能になる
自宅サーバーでownCloudを使っています。
先日ownCloudのサーバー側ソフトがバージョンアップしたので、7から8にアップデートしました。私の環境は以下の通りです。
ubuntu 14.04LTS
ownCloud 8.0.2 (stable)
Apache 2.4.7
PHP 5.5.9
当初は問題なく動いているように見えましたが、しばらく運用しているとownCloudに接続できなくことに気づきました。apache自体は動いていて、サーバーのトップページにはアクセスできるので、ownCloudがハングアップ?しているような感じです。apacheを再起動すると、再びownCloudにアクセスできるようになります。でも数時間すると、またアクセス不能になっているのです。
1週間、2週間とそんな状態が続き、気づいたときにapacheの再起動をするという姑息な手段でしのいでいました。
で、ようやく同じトラブルの記事を見つけて解決方法が分かったので書いておきます。
元記事はここです。
https://forum.owncloud.org/viewtopic.php?f=31&t=26331
英語なので、ざっと読んだ限りPHP APCというのがownCloudのコードと干渉している?みたいです。なので、PHP APCを外してしまうというのが解決策のようです。確認してみると確かにphp5-apcuというパッケージがインストールされています。
user@myserver:~$ dpkg -l | grep php5-apcu
ii php5-apcu 4.0.2-2build1 amd64 APC User Cache for PHP 5
そこで、元記事にあるようにこのパッケージをpurgeします。実行するのは赤字のコマンド1つだけです。
user@myserver:~$ sudo apt-get purge php5-apcu
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
状態情報を読み取っています... 完了
以下のパッケージは「削除」されます:
php5-apcu*
アップグレード: 0 個、新規インストール: 0 個、削除: 1 個、保留: 21 個。
この操作後に 313 kB のディスク容量が解放されます。
続行しますか? [Y/n]
(データベースを読み込んでいます ... 現在 342623 個のファイルとディレクトリがインストールされています。)
Removing php5-apcu (4.0.2-2build1) ...
php5_invoke prerm: Disable module apcu for apache2 SAPI
php5_invoke prerm: Disable module apcu for cli SAPI
php5_invoke prerm: Disable module apcu for cgi SAPI
Purging configuration files for php5-apcu (4.0.2-2build1) ...
あとはapacheを再起動するだけです。
user@myserver:~$ sudo service apache2 restart
* Restarting web server apache2
今のところ、これで順調に動いているようです。