.htaccessをいじっていてものすごく疲れた。
おとといくらいに書いたけど、movabletypeのエントリーの
アーカイブファイルをエントリー番号からタイトル名.html
みたいな感じにすると、番号ファイルがゴミとして残る。
でそっちが検索エンジンとかに引っかかってるので
捨てるに捨てられない。で、htaccessでリダイレクトする
ために旧ファイル→新ファイル記述をMTにやらせて、
upしてたんだけど色々不具合発生で2時間くらいかかってしまった。
参考になるかもしれないので書いておくと、
通常.htaccessでリダイレクトを指定するときは、
RedirectPermanent半角スペース「置き換えたいファイル」半角スペース「置き換え先のアドレス」
と書いてファイルにすればいいわけだが、
「置き換えたいファイル」を相対パスで書かないといけない。
「置き換え先のアドレス」は、http://から始まる絶対パスで書かないといけない。
で、.htaccessファイルをサイトのトップではなくて特定のディレクトリに置いて、
ディレクトリ内部のファイルを飛ばしたいんだけど、このとき
「相対パス」はサイトのトップから見たパスを指定しないとだめ。
つまり、
http://www.j-love.info/ino/blog/xxx.html
へのアクセスを
http://www.j-love.info/ino/blog/yyy.html
にしたくて
.htaccessファイルをhttp://www.j-love.info/ino/blog/
直下に置いた場合、
RedirectPermanent /ino/blog/xxx.html http://www.j-love.info/ino/blog/yyy/html
と指定してやらないといけない。
あと複数ファイルがある場合は改行してずらずら書けばOK。
最後に改行。
なにせエントリー数が多いので、サイトのトップでいちいち
.htaccessへのアクセスは結構重たいと思ったのでブログの
ディレクトリ下でコントロールしようとしていたため、
このような事態になった。
ついでに、blogディレクトリ以下で404エラー等が起きた場合は
blogトップに戻るように、
ErrorDocument 404 http://www.j-love.info/ino/blog
みたいな感じで指定。今まではドメイン内部の全てのエラーが
同じところにリダイレクトされちゃってたんだけど、これでblogを
見に来た人でエラーになった場合はトップに戻れる、と。
しかし2000ファイルくらい、いらないファイル消したいんじゃないだろうか。
すげえ量だ。どんだけ無駄にファイル作ってんだ。
まあ一度MTぶっ壊れたときのファイルとかも放置だったからな・・
まじで疲れた。
いや、作業する前から疲れてるんだよ。
だから、まじで疲れる。やべえ。寝よ。