TOPページまたは特定のページを除いてリダイレクトする
301を使うとブラウザに記録されテストがしにくいため、テストは便宜上「302リダイレクト」を使用します。
1 2 3 4 5 6 7 8 9 10 11 |
RewriteEngine On RewriteCond %{ENV:REDIRECT_STATUS} ^$ #トップページと、contactを除いてリダイレクト #RewriteRule ^(?!contact)(.+)$ https://sample.com/$1 [R=302,L,NE] #画像とcssファイルを除外 RewriteCond %{REQUEST_FILENAME} !^(.*)\.(gif|png|jpe?g|css|ico|js|svg)$ [NC] #リダイレクトのループを回避 RewriteCond %{ENV:REDIRECT_STATUS} ^$ #トップページを除いてリダイレクト RewriteRule ^(.+)$ https://sample.com/$1 [R=302,L,NE] |
「https://sample.com/$1」の「$1」を取り「https://www.example.com/」とすると、ディレクトリは継承されずリダイレクト先のTOPページへリダイレクトされる。
参考ページ:https://webmasters.stackexchange.com/questions/122874/htaccess-rule-to-redirect-entire-site-except-for-a-couple-pages-is-not-working
旧URLの全てのページから新しいURLへリダイレクトする
1 2 3 |
RewriteEngine On RewriteCond %{http_host} ^global-business.link/ RewriteRule ^(.*) https://global-link.info/product/goods/ [R=301,L] |