index.php?p=1などのURLでは検索ロボットはindex.php?p=1とindex.php?p=2を同じページとして見てしまうので不利である。その為、Permalinksの設定を行う。
Permalinksを変更する手順としては以下の手順を行うことにします。
- 管理画面からPermalinksを変更する。
- mod_rewriteでhttp://blog.seiji.me/1.htmlをhttp://blog.seiji.me/?p=1のようにrewriteする設定を行う。
管理画面でのPermalinksの変更
下の図のように変更します。
mod_rewriteによるURL書き換え設定
httpd.confでも.htaccessファイルでも構わないが、今回はhttpd.confのDirectoryディレクティブの中に下のように設定する。
# vi /etc/httpd/conf/httpd.conf
<Directory ${WordPressHome}>
AllowOverride None
RewriteEngine on
# Post
RewriteCond %{REQUEST_URI} ^/([0-9]+)\.html$
RewriteRule ^([0-9]+)\.html$ /?p=$1
# Next/Prev Link
RewriteCond %{REQUEST_URI} ^/page/(.*)$
RewriteRule ^page/(.*)$ /?paged=$1
# Category
RewriteCond %{REQUEST_URI} ^/cat/(.*)$
RewriteRule ^cat/(.*)$ /?cat=$1
# Tag
RewriteCond %{REQUEST_URI} ^/tag/(.*)$
RewriteRule ^tag/(.*)$ /?tag=$1
# Archive
RewriteCond %{REQUEST_URI} ^/date/[0-9]{4}/[0-9]{2}$
RewriteRule ^date/([0-9]{4})/([0-9]){2}$ /?m=$1$2
RewriteCond %{REQUEST_URI} ^/date/[0-9]{4}/[0-9]{2}/[0-9]{2}$
RewriteRule ^date/([0-9]{4})/([0-9]{2})/([0-9]{2})$ /?m=$1$2$3
# TrackBack
RewriteCond %{REQUEST_URI} ^/([0-9]+)\.html/trackback$
RewriteRule ^([0-9]+)\.html/trackback$ /wp-trackback.php?p=$1
# RssFeed
RewriteCond %{REQUEST_URI} ^/feed/(.*)$
RewriteRule ^feed/(.*)$ /?feed=$1
RewriteCond %{REQUEST_URI} ^/feed$
RewriteRule ^feed$ /?feed=rss2
</Directory>
これで目的のPermalinkにすることができたかと思います。

No comments yet.
Leave a comment
This is the comment form.