| viewportの設定に注意ブログトップ | CMS関連 | カスタムポスト(カスタム投稿)のアーカイブページを作る際の注意点
WordPressのパーマリンクでindex.phpが勝手に挿入される。
この記事は1年以上前の記事のため、内容が古い可能性があります。
かなり久しぶりにこの現象になったのでメモ。
パーマリンクの「カスタム構造」にて、なぜか頭にindex.phpが勝手に入る現象が発生。
消すことはできますが、そうするとページが開かなくなるという困った状態になります。
Codexを見てみると、「PATHINFO: "Almost Pretty"」という形式になっているらしい。
いわく
PATHINFO パーマリンクは、途中に /index.php が挿入されるという差異の他は、mod_rewrite パーマリンクによく似ています。
とのことですが、いやいや全く持って似て非なるものですよ。
というわけでいろいろと調べた結果、htaccessを直接記述すればよいとのこと。
以下、例は「ドキュメントルート/wordpress」にインストールしていると仮定してください。
ドキュメントルートにそのままおいている場合は「wordpress/」部分はいらないはずです。
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /wordpress/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /wordpress/index.php [L]
</IfModule># END WordPress
これをwordpressフォルダにアップロードしたところ、「カスタム構造」の設定でもページが開くようになりました。
なお、マルチサイト化すると、「パーマリンク設定」画面の「カスタム構造」では強制的に「/index.php」が入るようになるため、上記の方法では直せなくなります。(正確にはネットワーク設定で「/index.php」は削除可能なのですが、その後のhtaccessの設定がうまく行きませんでした。)
この状態になった場合は、このサイトに書かれている方法が非常に有効です。
wordpress のパーマリンクに index.php がはいって困ったの巻 | ちからの備忘録的日記
要するに、どこかのプラグインに
add_filter('got_rewrite','__return_true');
を潜り込ませて、有効化すればOK。
これで、「パーマリンク設定」画面で編集してもindex.phpが入ることはなくなるし、htaccessも特に編集することなく(マルチサイト化したときの初期の設定のもので)ページも正常に開くようになります。
参考サイト
nandani | 2012年08月23日 | コメント(0) | トラックバック(8) | CMS関連
トラックバック
トラックバックURL
トラックバック一覧
[…] WordPressのパーマリンクでindex.phpが勝手に挿入される。 […]
[…] WordPressのパーマリンクでindex.phpが勝手に挿入される。 […]
blog topic
ゼニス ヨドバシ
blog topic
オメガ スピードマスター 3220.50
» WordPressのパーマリンクでindex.phpが勝手に挿入される。ダリの雑記:WEBプログラム版
70.Staikudrik.Com
» WordPressのパーマリンクでindex.phpが勝手に挿入される。ダリの雑記:WEBプログラム版
Homelinux.Nsupdate.Info
食堂食品安全管理系统
blog topic
コメントする
※メールアドレスが公開されることはありません。