CMSで作成していたサイトの一部をリニューアルし、静的ページで作成し直すことになりました。
その為、パラメーター付きのURLを作り直した静的URLに301リダイレクトをさせたいのですが上手くいきません…。
●やりたいこと
http://www.aaa.com/shop/shop.php?id=60
にアクセスしたら
http://www.aaa.com/shop/shop_test.html
に301リダイレクトしたい。
元々.htaccessには下記のような記述がありました。
htaccess
1 2# This file is made by RewriteRule Tool. 3AddOutputFilter INCLUDES;DEFLATE .html 4 5# Enable RewriteEngine. 6RewriteEngine On 7 8# This file is made by RewriteRule Tool. 9AddOutputFilter INCLUDES;DEFLATE .html 10 11# Enable RewriteEngine. 12RewriteEngine On 13 14# 404 Error for Multidomain Directories. 15RewriteCond %{HTTP_HOST} ^aaa.com$ 16RewriteCond %{REQUEST_URI} ^/(test.aaa.com)/ 17RewriteRule ^(.*)$ /$1 [L,R=404] 18 19# Main RewriteRule for multidomain. 20RewriteCond %{HTTP_HOST} ^(test.aaa.com) 21RewriteCond %{REQUEST_URI} !^/(test.aaa.com)/ 22RewriteRule ^(.*)$ /%{HTTP_HOST}/$1/ [L] 23 24Redirect permanent /campaign/201703/index.html /shop/shop.php?id=43 25 26#存在しないページのアクセスをTOPページにリダイレクト 27ErrorDocument 404 http://www.aaa/404/
この中にある、
[Redirect permanent /campaign/201703/index.html /shop/shop.php?id=43]
は、/campaign/201703/index.html→/shop/shop.php?id=43に飛ぶのはうまく言っているようなので、それを利用して下記のように書いてみたのですが上手くいかず、エラーもでませんでした。
(ただ打ったそのままのURLでサイトが表示されるだけ)
htaccess
1Redirect permanent /shop/shop.php?id=60 /shop/shop_test.html
その他いろいろ調べて、下記のような方法も試してみたのですが上手くいきません…。
htaccess
1# RewriteCond %{QUERY_STRING} shop/shop.php?id=60 2# RewriteRule ^(.*)$ http://www.aaa.com/shop/shop_test.html? [R=301,L]
どなたかお分かりになればご教授頂きたいです。
よろしくお願い致します。
タグはHTMLよりも.htaccessのほうが適切に思います。
確かにそうですね!
修正しました。ありがとうございます。
回答1件
あなたの回答
tips
プレビュー