実現したいこと
表題の通り、管理画面以外のページは全てリダイレクトさせたいです。
リダイレクト元のサイトと、リダイレクト先のサイトのディレクトリ構成・ページ構成は全く同じです。
発生している問題・分からないこと
htaccessでコードを書いてみたのですが、トップページのみがリダイレクトされて、その他下層ページはリダイレクトされません。
一部、CSSやJavascriptのファイルはリダイレクトされているようで、表示されるリダイレクト元のページは崩れています。
該当のソースコード
htaccess
1<IfModule mod_rewrite.c> 2RewriteEngine On 3RewriteCond %{REQUEST_URI} ^/wp-(.*)\.php [OR] 4RewriteCond %{REQUEST_URI} ^/wp-admin/ 5RewriteCond %{REQUEST_URI} ^/wp-includes/ 6RewriteRule ^ - [L] 7RewriteRule ^(.*)$ https://sample.com/$1 [R=301,L] 8</IfModule>
試したこと・調べたこと
- teratailやGoogle等で検索した
- ソースコードを自分なりに変更した
- 知人に聞いた
- その他
上記の詳細・結果
全てのページをリダイレクトさせるコードとして下記が紹介されている記事を見つけましたが、管理画面は除外したいので採用できませんでした。
htaccess
1Redirect permanent / https://new.com/
補足
特になし
よくあるのは、「.htaccessに他にもrewriteの記述があって、そっちの影響だった」ですが、WordPressなら他にも書いてあるのでは?それとの前後関係は?とか。
> トップページのみがリダイレクトされて、
の「トップページ」とは具体的にどういうURLのことを言ってますか?
4行目の末尾に [OR] がないので、3,4,5行目の条件は、「(3 または 4) かつ 5」という意味ですが、間違ってるのでは?
「3 または 4 または 5」を意図したのでは?という気がしますが。
R=301 で恒久リダイレクトしているので、リライト設定を書き直す都度、ブラウザのキャッシュクリアーが必要ですが、毎回やってますか?
4行目に [OR] を追加したところ、リダイレクトがうまくいきました。
ベストアンサーに選びたいので同じ内容を回答欄に投稿いただけますでしょうか?
キャッシュクリアについては、毎回Chromeのシークレットモードで確認していたので問題なかったはずです。
> キャッシュクリアについては、毎回Chromeのシークレットモードで確認していたので問題なかったはずです。
なるほど。でも、普通に「テストが終わって完成するまではR=302」というのが楽です。
「テストが終わって完成するまではR=302」
勉強になりました。ありがとうございます!
回答1件
あなたの回答
tips
プレビュー