2014-02-27

Wordpressのパーマリンク変更

以前は/%category%/%post_id%/ という形式であったが、

他のWebサイトでも問題視しているように

・post_idは投稿時以外(下書き等)でもカウントアップされてしまい歯抜けになる。

・post_idはサーバー移行をすると移行前後で値が変わってしまうらしい。

・category変更があった場合にリンク切れを起こす

 

という大きな問題が有り、まだ投稿数60ちょっとしかない状況だったので

この際、/%post_name%/というユニークな投稿名を自分で決定する方式に変更した。

 

それに伴い、以前の/%category%/%post_id%/のパスで来た人を

/%post_name%/にリダイレクト(301)してあげる必要が出てきた。

 

色々と調べてきたら.htaccessを自分で書き上げる方法が良さそうだったので共有してみる。

参考URL↓

http://nekonomemo.net/wordpress-permalink-redirect/

http://webshufu.com/calc-and-get_posts-makes-redirecting-ease/

 

上記Webサイトに書かれているように、パーマリンク変更前と変更後をリスト出力して

Excelで

Redirect permanent /hoge_cateory/xxxx http://freedom-man.com/post_name

の形式で出力して.htaccessに記載するだけのシンプルな方法だが、

私の環境では何故か生成した.htaccessをドキュメントルート直下に置いても動作しなかった。

 

Redirectが効かないとか有り得ないので、

httpd.conf及びインクルードしているconfファイルの設定で上書きしているのでは?と思ったら、

案の定、httpd.confがインクルードしているconf/wordpress.confで

Alias /blog /var/www/hogehoge/

とエイリアスが貼ってあり、/blogはドキュメントルートじゃないところにアクセスしていたので、

リダイレクトディレクティブを/var/www/hogehoge直下の.htaccessに入れてあげたらちゃんと動作してくれた。

 

ということで、めでたしめでたし。

 

このエントリーをはてなブックマークに追加