尝试301重定向
www.mydomain.com/product.php?view=cat&category=t-shirts
到
www.mydomain.com/t-shirts/
请注意我有多种变体
product.php?view=cat&category=...
此外,旧类别参考可能是X;但是,新的类别参考可能是Y.这是如何完成的?提前感谢您的帮助。
这就是我的htaccess现在的样子
RewriteBase /
# RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]*)/$ index\.php?pg=$1 [L]
RewriteRule ^([^/]*)/([^/]*)/$ index\.php?pg=$1&pid=$2 [L]
# RewriteRule . /index.php [L]
Redirect 301 /products.php?view=cat&mng=t-shirts http://www.mydomain.com/shirts/
Redirect 301 /products.php?view=cat&mng=shorts http://www.mydomain.com/pants/
Redirect 301 /products.php?view=cat&mng=jeans http://www.mydomain.com/pants/
毋庸置疑,我所有的“重定向301”都在给予404.
答案 0 :(得分:0)
我找不到任何可以避免“重写”和“重定向”冲突的逻辑。因此,我利用php 301重定向将其保存在文件“products.php”中。在我的脚本中,我做了以下事情:
if (isset($_GET['mng']))
{
switch ($_GET['mng'])
{
case 't-shirts':
header("HTTP/1.1 301 Moved Permanently");
header("Location: http://www.mydomain.com/shirts/");
break;
case 'shorts':
header("HTTP/1.1 301 Moved Permanently");
header("Location: http://www.mydomain.com/pants/");
break;
case 'jeans':
header("HTTP/1.1 301 Moved Permanently");
header("Location: http://www.mydomain.com/pants/");
break;
}
}
抱歉,我没有评论我的PHP。感谢您的投入。