トラックバックURL: | http://jemi.s5.xrea.com/mt/mt-tb.cgi/347 |
といっても、別にこちらの問題なだけで、普通にアクセスしてくださる分には何の問題もありません。なぜか、旧アドレス(http://jemi.s5.xrea.com/cgi-bin/mt/)でindex.htmlを省略した時、それが補完されなくなり、エラーが出るようになったのです。ディレクトリを移動したら、その問題が解消されました。まったくもって謎であります。
ディレクトリ移動は言わばURLの移動ですから、様々なリスクが付きまといます。ここで一役買ったのが、Apacheウェブサーバのリダイレクト機能です。
.htaccessにこんな一文を書きました。
Redirect permanent /cgi-bin/mt/ http://jemi.s5.xrea.com/mt/
Redirect指定は
Redirect [status] [url-path] [url]
という文法です。これは [url-path] 以下のアドレスを [url] 以下にくっつけて、URLが移動しても何事もなかったように、ユーザにアクセスさせる機能です。ところで、ここで気をつけたいのが [url-path] の部分です。これを間違えると何もなりません。
こちらでは [url-path] は絶対パスで記述しなければなりません 」とのことですが、絶対パスというか、apacheで設定しているであろう、ドキュメントルート、もしくはユーザディレクトリを除いた絶対パスを書くとうまく行きました。
例えばリダイレクトを適用したいディレクトリの絶対パスが
/home/satake/public_html/cgi-bin/mt/
で、Apacheのhttpd.confに記述されたドキュメントルートが
DocumentRoot /home/satake/public_html/
もしくはユーザディレクトリの設定が
<IfModule mod_userdir.c>
UserDir public_html
</IfModule>
<Directory "/home/*/public_html/">
(〜省略〜)
</Direcotory>
という設定ならば、[url-path]に書くべきパスは
/cgi-bin/mt/
である、ということです。ちょっとわかりにくいか(^^; この罠にはまったので備忘録として書いておきます。
どおりでこないだクリックしたらエラーを返されたんですね(笑
てっきりMTを手直しでもしているのかと。
それにしても不明ですねー。サーバー側で
何かしら問題発生してセキュリティ強化でもしたんでしょうか。
index.htmlの補完は基本的なとこだと思うんですけどねー。
むかしの、cgi-bin/mt 以下だけにその問題が起こったみたいなんですよ。
.htaccessで何かしたわけでもないのに、ワケワカランです(^^;