パーマリンクを標準から変更したらはまった

SEO的に優れている点とわかり易さを優先してパーマリンクを標準の /?p=XXX から投稿名(スラッグ)に変更した。

WordPressをNginxのサブディレクトリで運用しているNginxの設定例はあまりなく、とりあえずphpmyadminを設定した際の設定を流用してみた。


最初に使用したblog.confの例

この設定で標準のパーマリンクは処理されるか、サブディレクトリ形式のパーマリンクではNot foundになる。エラーログを覗くとどうもtry_filesの動作が期待したものとは異なっているようだった。

try_filesの動作やNginx設定の詳細についてはこちらのページに詳しい情報が記載されています。。。

WordPress用のパーマリンク設定

nginxの設定、その3


動作したblog.confの設定例(差分のみ)

変更点は、try_filesを止めて rewrite でリダイレクトする点。

想定動作では、パーマリンクの/blog/start/が見つからないのでif文にマッチし、/blog/index.php にパラメータ付でリダイレクトするはず。

確かに、これでうまくいきました。

スポンサーリンク
レクタングル大広告




レクタングル大広告




シェアする

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

フォローする

スポンサーリンク
レクタングル大広告