500エラー、ErrorDocument takes two argumentsの対応

このエントリーをはてなブックマークに追加
投稿者:chikunai 投稿日時:2014-04-18(金) 03:11

昨年の発表により、さくらインターネットさんのレンタルサーバで、OSのバージョンアップやディスク容量の追加が進んでいます。これにより、月額515円のスタンダードのディスク容量が、30GBから100GBに増えました。写真を溜め込んでいる私としては、1TBくらいほしいところですが、1TBのレンタルサーバは高いので手が届きません。それでも通常ホームページに使う分には十分すぎる容量です。そのレンタルサーバに、いよいよバージョンアップいうタイミングで、私のDrupalがトラブルにあったので、メモを残しておきます。

バージョンアップ中に、たまたま起きていて私のサイトを開いてみたら「500 Internal Server Error」、何かやらかしたかと、かなりヒヤッとしました。すかさずエラーログを確認します。さくらインターネットをご利用の方ならわかると思いますが、コントロールパネルのアクセスログを見れば、エラーログ(error_log)の内容が確認できます。そこで記載された内容を確認したら、何やら仕事でも普段見かけない「ErrorDocument takes two arguments, Change responses for HTTP errors, referer: 」でした。

最初は、何の事かさっぱりわかりませんでしたが、ググって調べたところ、海外のサイトで問題の解決方法を発見。.htaccessのErrorDocumentで、二つの引数が指定されている事が問題、とのことでした。

変更前の.htaccess

  1. # Make Drupal handle any 404 errors.
  2. ErrorDocument 404 /index.php index.php

よく見ると/index.phpとindex.phpの二つが記載されています。一つに変更しました。

変更後の.htaccess

  1. # Make Drupal handle any 404 errors.
  2. ErrorDocument 404 /index.php

もともとDrupal 6に添付された.htaccessは変更後の状態でした。通常のDrupal 6ユーザーでは起こりえない話しです。

おそらく、Drupal 5から6へ移行した際の名残り、またはさくらインターネットに合わせたカスタマイズを実施したことによるものではないか、と思います。またErrorDocumentの指定は、OSバージョンアップに伴うApache 1.3系から2.2系に代わり、仕様が変わったためと思われます。




コメント(0)

新しいコメントの投稿

このフィールドの内容は非公開にされ、公表されることはありません。
  • 使用できるHTMLタグ: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <img> <table> <tr> <th> <td>
  • 行と段落は自動的に折り返されます。
  • You can use BBCode tags in the text. URLs will automatically be converted to links.
  • 次のタグを使用してソースコード構文をハイライトすることができます。: <code>, <blockcode> The supported tag styles are: <foo>, [foo].
  • You may insert videos with [video:URL]
  • ウェブページアドレスとメールアドレスは、自動的にハイパーリンクに変換されます。

書式オプションに関するより詳しい情報...

CAPTCHA
この問題はユーザが人間であるかどうかをテストし、スパムによる自動投稿を防ぐためのものです。
Image CAPTCHA
Enter the characters shown in the image.
Drupal theme by Kiwi Themes.