【发布时间】:2021-11-16 13:57:15
【问题描述】:
我网站的 URL 格式为...
www.website.com/index?t=abc123
...abc123 是一个 6 个字符的十六进制代码。如何使用 htaccess 将所有这样的地址重定向到...
www.website.com/abc123
...但仍以原始 URL 提供内容?
因此,例如,键入...
www.website.com/index/php?t=5f33ee
...将重定向到...
www.website.com/5f33ee
...但会提供来自...的内容
www.website.com/index.php?t=5f33ee
...没有用户被重定向。
到目前为止,我的 .htaccess 看起来像这样。我理解,第一点将所有非 https 流量重定向到 https。第二个 RewriteRule 似乎可以从短 url 提供内容。
RewriteEngine on
RewriteCond %{HTTP_HOST} !^www\.website\.com$ [NC]
RewriteRule ^(.*)$ https://www.website.com/$1 [R=301]
RewriteRule ^([0-9a-f]{6})$ index.php?t=$1 [L]
【问题讨论】:
-
这很常见,你会在网上找到成千上万的例子。见Reference: mod_rewrite, URL rewriting and "pretty links" explained
标签: apache .htaccess mod-rewrite url-rewriting