Subversion資料一覧

ApacheのWebDAV経由でリポジトリにアクセスすると「Could not open the requested SVN filesystem」というエラーが出る

2009/6/18更新

対応バージョン: 1.6.2

Webブラウザからリポジトリにアクセスするとサーバから以下のようなメッセージが返ってきてリポジトリにアクセスできない。

<?xml version="1.0" encoding="utf-8"?>
<D:error xmlns:D="DAV:" xmlns:m="http://apache.org/dav/xmlns" xmlns:C="svn:">
<C:error/>
<m:human-readable errcode="200030">
Could not open the requested SVN filesystem
</m:human-readable>
</D:error>

Apacheのログには以下のメッセージが出ている。

(20014)Internal error: SQLite compiled for 3.6.15, but running with 3.3.7
Could not fetch resource information.  [500, #0]
Could not open the requested SVN filesystem  [500, #200030]
Could not open the requested SVN filesystem  [500, #200030]

これはSubversionのApacheモジュール(/usr/local/apache2/modules/mod_dav_svn.soなど)がリンクしているSQLiteライブラリのバージョンが3.6.15であるにもかかわらず、古いバージョンの3.3.7が別のモジュールによって使用されていることを示す。

例えばSubversion導入より前にPHPモジュール(libphp5.so)などを入れていたりすると、同モジュールは導入時にSQLiteライブラリをリンクするため古いバージョンのライブラリをリンクしている可能性がある。

したがってPHPモジュールを導入し直して新しいSQLiteライブラリをリンクするようにすればよい。

あるいはPHPモジュールを使用していなければ設定ファイルで無効にする。

% sudo vi /usr/local/apache2/conf/httpd.conf
:
# LoadModule php5_module        modules/libphp5.so <--- コメントアウト
: