如何使用 htaccess 防止重复内容
How to prevent duplicate content using htaccess
我正在使用 .htaccess 创建一个干净的 URL 但是
当我检查我的网站时
example.com/some-request
它有重复的内容
xyz.com/product_view.php?category_id=some-request
我很难解决这个问题,这是我的重写规则:
RewriteEngine on
RewriteBase /
RewriteRule ^([0-9a-zA-Z_-]+)$ product_view.php?category_id= [NC,L]
有什么更好的解决方案?
您需要外部重定向 请求
example.com/product_view.php?category_id=some-request
至 xyz.com/some-request
在您的内部重写.
之前
尝试以下操作:
RewriteEngine on
RewriteBase /
# Redirect direct requests for the real URL to your desired URL
RewriteCond %{THE_REQUEST} \?category_id=([^\ ]*)
RewriteRule ^product_view\.php /%1? [R=301,L]
# Existing rewrite to real URL
RewriteRule ^([0-9a-zA-Z_-]+)$ product_view.php?category_id= [NC,L]
顺便提一下...但只有当这些 URL 被编入索引时,它才真正是重复的。如果您一直链接到您的 "pretty" URL 那么风险相对较低。这也可以通过在页面上设置适当的 rel="canonical"
link
元素来避免。
我正在使用 .htaccess 创建一个干净的 URL 但是
当我检查我的网站时
example.com/some-request
它有重复的内容
xyz.com/product_view.php?category_id=some-request
我很难解决这个问题,这是我的重写规则:
RewriteEngine on
RewriteBase /
RewriteRule ^([0-9a-zA-Z_-]+)$ product_view.php?category_id= [NC,L]
有什么更好的解决方案?
您需要外部重定向 请求
example.com/product_view.php?category_id=some-request
至 xyz.com/some-request
在您的内部重写.
尝试以下操作:
RewriteEngine on
RewriteBase /
# Redirect direct requests for the real URL to your desired URL
RewriteCond %{THE_REQUEST} \?category_id=([^\ ]*)
RewriteRule ^product_view\.php /%1? [R=301,L]
# Existing rewrite to real URL
RewriteRule ^([0-9a-zA-Z_-]+)$ product_view.php?category_id= [NC,L]
顺便提一下...但只有当这些 URL 被编入索引时,它才真正是重复的。如果您一直链接到您的 "pretty" URL 那么风险相对较低。这也可以通过在页面上设置适当的 rel="canonical"
link
元素来避免。