MediaWikiの新しいページ作成時に404エラーになる場合の対処法

新KANOTYPE WIKIをオープンするにあったって、MediaWikiとIISサーバの特性のせいで苦労したところが多々ありました。今回はその中のひとつ、新しいページを作成するとき、404エラーになる問題の回避法です。

MediaWikiで右上の検索ボックスや赤リンクからではなく、直接アドレスに「index.php?title=新しいページ」のように指定すると、サーバの環境によっては404エラーになります。

これはサーバの404エラー処理を優先させるMediaWikiの基本設定のために起こる問題です。通常のユーザは上のようにページを指定したとき、そのページがないと404エラーページよりはWikiの新しいページ作成画面が表示されるのを期待するはずです。

解決方法としては、サーバ側のエラー処理を基本設定に変更する方法があります。しかしホスティング環境によってはサイト管理者が直接サーバの環境設定をいじれない場合があります。

その時はMediaWikiの本体を直接修正することで解決できます。しかしこの方法は一般的に推奨される方法ではありません

この方法はMediaWiki 1.19.2を基準としています。

includes/Article.phpファイルの994番目ラインの

$wgRequest->response()->header( “HTTP/1.1 404 Not Found” );

をコメント処理または削除する。

これでアドレスに直接存在しないページを指定しても、404エラーにならずMediaWikiの存在しないページ対応の画面になります。

※出典

https://bugzilla.wikimedia.org/show_bug.cgi?id=18270#c10

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

Note: Commenter is allowed to use '@User+blank' to automatically notify your reply to other commenter. e.g, if ABC is one of commenter of this post, then write '@ABC '(exclude ') will automatically send your comment to ABC. Using '@all ' to notify all previous commenters. Be sure that the value of User should exactly match with commenter's name (case sensitive).