正在从SEO友好的URL中删除id/变量



我正在尝试重写一个URL,使其对SEO友好,并排除产品ID。目前我在.htaccess文件中使用这个:

RewriteRule ^shop/product/([^/.]+)/([^/.]+)$ products.php?id=$2&name=$1 [NC,L]

例如,将其重写为:

shop/product/product-name/12

有没有一种方法可以重写此URL,使其删除或从末尾排除产品ID?

请您尝试以下内容,并使用所示的示例进行编写和测试。请确保在测试URL之前清除浏览器缓存。

第一组规则是考虑您的product.php存在于根目录中,与.htaccess所在的路径相同。

RewriteEngine ON
RewriteCond %{QUERY_STRING} ^$
RewriteRule ^shop/product/([^/]*)/([^/]*)/?$ /products.php?id=$2&name=$1 [NE,R=301,NC]
RewriteCond %{QUERY_STRING} !^$
RewriteCond %{THE_REQUEST} s/products.php?id=[^&]*&name=[^s]*s [NC]
RewriteRule ^(.*)$ shop/product [R=301,QSD,NE,L]


请仅在.htaccess.中一次使用以上或以下规则

RewriteEngine ON
RewriteCond %{QUERY_STRING} ^$
RewriteRule ^shop/product/([^/]*)/([^/]*)/?$ products.php?id=$2&name=$1 [NE,R=301,NC]
RewriteCond %{QUERY_STRING} !^$
RewriteCond %{THE_REQUEST} products.php?id=[^&]*&name=[^s]*s [NC]
RewriteRule ^(.*)$ shop/product [R=301,QSD,NE,L]

相关内容

  • 没有找到相关文章