Apache mod_rewrite规则隐藏URI部分

时间:2015-10-28 18:05:52

标签: apache mod-rewrite redirect

我需要删除部分URI,但我仍需要在内部传递它。

例如:www.hostname.com/category/N-abcdef

致:www.hostname.com/category

但我需要在内部通过N-abcdef进行重定向

如果我遵守这些规则,它就有效:

RewriteRule ^/category/N-abcdef$ /category [R=301]
RewriteRule ^/category$ /category/N-abcdef [PT]

但是我试图做更通用的事情,因为N - 。*对于每个类别都是不同的。我试过这些:

RewriteCond %{REQUEST_URI} ^/(.*)/(N-.*)/?$
RewriteRule ^/(.*)/(N-.*)/?$ /$1 [R=301]
RewriteRule ^/(.*)$ /$1/%2 [PT]

这些规则甚至删除了所需的部分(N - 。*),但没有正确地进行内部重定向,因为报告的结果是不可取的。

简而言之,我需要隐藏N-FOO URI。

有什么建议吗?

0 个答案:

没有答案