.htaccess重定向和可见URL

时间:2015-07-01 08:42:43

标签: regex .htaccess mod-rewrite url-rewriting seo

我是htaccess的新手,我想知道如何做这两件事,如果他们被推荐,或者是否有另一种更好的方法来实现SEO友好和良好的URL:

  1. 从www.example.com/products?id=car重定向到example.com/car。如果你能告诉我对SEO友好的最佳方法,那就太棒了(301或其他)。
  2. 即使点击重定向到www.example.com/products?id=car的链接,也始终将url example.com/car显示为漂亮的网址而不是符号。

1 个答案:

答案 0 :(得分:1)

您可以在DOCUMENT_ROOT/.htaccess文件中使用此代码:

RewriteEngine On
RewriteBase /example/

# external redirect from actual URL to pretty one
RewriteCond %{THE_REQUEST} /products(?:\.php)?\?id=([^\s&]+) [NC]
RewriteRule ^ %1? [R=302,L,NE]

# internal forward from pretty URL to actual one
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^/]+)/?$ products.php?id=$1 [L,QSA]