htaccess 重写 url,如 Stack Overflow

2023-12-13

Stack Overflow 生成重写 URL,

所以我需要知道如何像 Stack Overflow 那样做到这一点?

http://stackoverflow.com/questions/9168364/how-to-rewrite-seo-friendly-urls-like-stackoverflow => 200 ok.(without trailing slash)
http://stackoverflow.com/questions/9168364/how-to-rewrite-seo-friendly-urls-like-stackoverflow/ => 200 ok.(with trailing slash)
http://stackoverflow.com/questions/9168364/ => 301 redirect.
http://stackoverflow.com/questions/9168364  => 301 redirect.

我如何使用 mod_rewrite 做到这一点?

我有这样的东西:

RewriteRule ^([0-9]+)[/]([^/]*) ./cat.php?id=$1&title=$2 [L,NC]



mydomain.com/999 => 404 not found.
mydomain.com/999/ => 200 ok.
mydomain.com/999/test => 200 ok.
mydomain.com/999/test/test2 => 200 ok.
mydomain.com/999/test/test2/test3 => 200 ok.
mydomain.com/999/test/test2/test3/test4 => 200 ok.

请让我知道如何更改 RewriteRule ?


您需要通过使尾随斜杠可选来稍微调整您的正则表达式。使用这个规则:

RewriteRule ^([0-9]+)(?:/([^/]*))?/?$ ./cat.php?id=$1&title=$2 [L,NC]
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

htaccess 重写 url,如 Stack Overflow 的相关文章

随机推荐