我有一个页面,我列出了我的所有产品。但我也想在不同的网址上使用相同的页面。因此,两个网址都应该使用任何重定向打开相同的页面。
原始网址为:http://example.com/product/all-products
具有相同内容的新网址应为http://example.com/all-products
我怎么能用.htaccess做到这一点?
答案 0 :(得分:0)
尝试以下规则
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^([\w-]+)$ product/$1 [L]
答案 1 :(得分:0)
您可以在 /root.htaccess :
中使用以下内容RewriteEngine on
#1 redirect browser url from "/product/foobar" to "/foobar"
RewriteCond %{THE_REQUEST} /product/(.+)\sHTTP [NC]
RewriteRule ^ /%1 [L,R,NE]
#2 if "/foobar" exists as a file or dir in product folder
RewriteCond %{DOCUMENT_ROOT}/product/$1 -f [OR]
RewriteCond %{DOCUMENT_ROOT}/product/$1 -d
#3 then rewrite "/foobar" to "/product/foobar"
RewriteRule ^(.*?)/?$ /product/$1 [L]
如果上述示例失败,您可以尝试以下
RewriteEngine on
RewriteCond %{THE_REQUEST} /product/(.+)\sHTTP [NC]
RewriteRule ^ /%1 [L,R,NE]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)$ /product/$1 [L]