« 車検1ヶ月前の申し込みで早割になると聞いてほいほい飛んで行ったら20万もとられたでござるの巻 | ホーム | Snow Leopardでx86_64非対応なframeworkを使わなければならない場合にどうするか »
2009年7月11日
MT3と4で変わったpermalink URLの生成ルールの間に橋を架けよう
http://blog.bq69.net/2008/03/mt-41-upgrade-contd.html
bq69 collectibles - MT 4.1 upgrade: cont'd
話題としては多分ずいぶん前の話になるはずなんですけど、ほっといてた。MT3系からMT4系にアップグレードしたとき、permalinkのURL生成ルールのデフォルトが変わっちゃったみたいだね、という話ですよ。
しかし、このルールのうちの「スペースはハイフンに」新ルールで、そもそもは「スペースはアンダースコアに」だった。ハイフンになろうが、アンダースコアになろうが、それ自体はかまわないんだけど、...
このルールに沿うと、MT3→MT4にアップグレードした時点で古いページのpermalinkがaaa_bbb_ccc.htmlからaaa-bbb-ccc.htmlに変わってしまったよどうしよう、ってことなんですね。
まあ、新ルールによるpermalinkが定着してしまう前に早めに旧ルールの設定に戻すとかすればよかったんですけど、それも大分経つまで分からなかったので、気づいたときにはずいぶんと進めてしまった後だったんですな。いつごろだっけ。忘れた。
で、そのうち古いaaa_bbb_ccc.html形式だったページがデッドリンクになって随分してしまったけど、アクセスログをたまに見るとやっぱ来るんですよね、旧形式でのURLへのアクセスが。RewriteRuleをいじればたぶんできるはず、とざっくり考えてたんですが"_"が複数あったときの書き換えルールをどう作ってやりゃいいのか思いつかなかったんですが、Nオプション使うって手があったすね。ぽん。なるほど。
http://q.hatena.ne.jp/1209891249
Apacheのmod_rewriteをつかって、URL中のアンダースコアをハイフンに置き換えるRewriteRuleを教えてください。 つまり、 http://example.com/blog/2008/05/post_14.html と.. - 人力検索はてな
↑こちらを参考にして↓のようにしてみましたら出来たざんす。おほほ。ディレクトリ名に年月以外のアルファベット等が適用されるように変更したざますのよ。
トラックバック(0)
トラックバックURL: http://foursics.jp/cgi-bin/mt/mt-tb.cgi/264
「テンプレートの設定」のアーカイブマッピングで変更できるんじゃないかな。
yyyy/mm/entry-basename.html
を
yyyy/mm/entry_basename.html
に変えればよろしいかと。試してないけどね。
アーカイブマッピングは便利だよ。
通常ページとは別に携帯用のページ作ったり、xmlやjsonのページ書き出してFlashやjavascriptから読み込ませたり。
>101さん
どうもですー。
そうですね、まさにそのテンプレートの設定を早くに修正すればよかったんですが、気がつくまでにずいぶん掛かってしまって"entry-basename.html"形式と"entry_basename.html"形式それぞれのリンクが混在する形で流入するようになってしまったんですよね。
普段あんまりアクセスログの、しかもリファラなんて見てなかったですねえ...。ちょっと反省してます。^^;;