
古くなった MediaWiki インストール (v1.24) を最新バージョンに更新し、Debian 10 (Debian パッケージとしてインストールされたものではなく、ホームページのアーカイブを使用している) で実行したいのですが、データベースの更新がうまくいきません。CLI 更新スクリプトでも Web バリアントでもうまくいきません。
CLI ベースのスクリプトの場合、問題は LocatlSettings.php に複数の wiki があることです。
<?php
error_reporting( -1 );
ini_set( 'display_errors', 1 );
// Include common settings to all wikis before this line (eg. database configuration)
switch ( $_SERVER['SERVER_NAME'] ) {
case 'wiki.xyz.de':
require_once 'LocalSettings.wiki.xyz.de.php';
break;
case 'wiki.abc.de':
require_once 'LocalSettings.wiki.abc.php';
break;
default:
header( 'HTTP/1.1 404 Not Found' );
echo 'This wiki is not available. Check configuration.';
exit( 0 );
}
ご覧のとおり、Wiki をロードするために NGINX を設定するときに、ブラウザに表示されるエラー メッセージを有効にしています (基本的には現在の Wiki の設定を使用し、新しい Wiki バージョンのフォルダへのパスを変更するだけです)。サイトにアクセスしようとすると、次のエラーが表示されます。
スクリプトを実行するには、どのケースを使用するかを指定する必要があります。"-S wiki.xyz.de" で実行すれば動作するはずですが、"無効なアドレス" が表示されます。:8080 などのポートを追加すると動作しますが、実行中であることと、CTRL + C で停止できることが通知されます。そのポートを SSH 経由でローカル マシンに転送し、ブラウザーで localhost:8080 を開くことはできますが、明らかにスクリプトを CLI で実行する必要があることが通知されます。
「-S wiki.xyz.de:8080」を php に渡して「sudo -u www-data (ディレクトリ全体の所有者は、古いインストールと同様に www-data:www-data です)」で実行することで、Web 更新スクリプトにアクセスできます。Web 更新スクリプトは正常に実行されているようですが、問題はポート 8080 にあります。最近 Wordpress をインストールしましたが、nginx 構成にエラーがあったため、同じ方法でインストール スクリプトを実行してみました。インストールはされましたが、ページを開こうとすると毎回 url.de:8080 にリダイレクトされます。そのため、その方法で Web 更新スクリプトを実行するのは現実的ではありません。
他に何ができるかわかりません。唯一考えられるのは、そのページの nginx 設定にエラーがあるということかもしれません。これは古い MediaWiki では機能していましたが、新しいバージョンでは機能しませんでした。そのため、設定をアップロードしました。誰か何かわかるかもしれません:ペーストビン