我正在尝试重定向旧网址:
www.mydomain.com/prodotti/G/YToyOntzOjg6IklEX01BUkNBIjtzOjI6IjI3IjtzOjEwOiJJRF9NT0RFTExPIjtzOjM6IjU2OCI7fQ..
这个,更短和SEO友好:
www.mydomain.com/moto/aprilia/caponord_1200
我正在写htaccess
上的301重定向,这是我使用的行:
Redirect 301 /prodotti/G/YToyOntzOjg6IklEX01BUkNBIjtzOjI6IjI3IjtzOjEwOiJJRF9NT0RFTExPIjtzOjM6IjU2OCI7fQ.. http://www.mywebsite.com/moto/aprilia/caponord_1200
但是当我在浏览器上插入旧URL时,重定向结果为:
www.mywebsite.com/moto/aprilia/caponord_1200?/prodotti/G/YToyOntzOjg6IklEX01BUkNBIjtzOjI6IjI3IjtzOjEwOiJJRF9NT0RFTExPIjtzOjM6IjU2OCI7fQ..
我的301重定向有什么问题?如何在没有URL合并的情况下获得纯重定向?
由于
这是带有modrewrite测试的htaccess
RewriteEngine on
RewriteCond $1 !^(index\.php|images|css|media|js|robots\.txt)
RewriteRule ^(.*)$ /index.php?/$1 [L]
RewriteRule ^/moto/aprilia/capondor_1200$ /prodrotti/G/YToyOntzOjg6IklEX01BUkNBIjtzOjI6IjI3IjtzOjEwOiJJRF9NT0RFTExPIjtzOjM6IjU2OCI7fQ.. [R=301, L]
答案 0 :(得分:1)
尝试像这样的重写规则
RewriteEngine On
RewriteRule ^/moto/aprilia/capondor_1200$ /prodrotti/G/YToyOntzOjg6IklEX01BUkNBIjtzOjI6IjI3IjtzOjEwOiJJRF9NT0RFTExPIjtzOjM6IjU2OCI7fQ [R=301]
您可能需要在重写规则中将YToyOntzOjg6IklEX01BUkNBIjtzOjI6IjI3IjtzOjEwOiJJRF9NT0RFTExPIjtzOjM6IjU2OCI7fQ
替换为整个字符串,因为我认为..
意味着它比您提供的更长?
答案 1 :(得分:1)
你的htaccess应该是这样的
RewriteEngine on
RewriteRule ^prodrotti/G/YToyOntzOjg6IklEX01BUkNBIjtzOjI6IjI3IjtzOjEwOiJJRF9NT0RFTExPIjtzOjM6IjU2OCI7fQ\.\.$ /moto/aprilia/capondor_1200? [R=301,L]
RewriteCond $1 !^(index\.php|images|css|media|js|robots\.txt)
RewriteRule ^(.*)$ /index.php?/$1 [L]