1

目前在我的网站上,访问者可以通过“www.mywebsite.com/index.php?post=123”直接访问不同的帖子,其中 123 是帖子编号。

我正在尝试使用 htaccess 稍微清理直接链接,期望的结果是用户可以转到“www.mywebsite.com/123”,htaccess 会将他们带到“www.mywebsite.com/index.php ?后=123。

我曾尝试使用以下 Modrewrite,但它会将我引导至 404 错误:

RewriteRule ^/([0-9]+)$ /index.php?videoID=$1 [QSA]

我确信 Modrewrite 模块正在工作,因为我也在使用其他规则。这是我的整个 .htaccess 文件:

RewriteEngine On
RewriteRule ^/([0-9]+)$ /index.php?videoID=$1 [QSA]
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
4

1 回答 1

0

如果这些规则在您的 .htaccess 文件中,您需要从用于匹配 URI 的正则表达式中删除前缀(前导斜杠):

RewriteRule ^([0-9]+)$ /index.php?videoID=$1 [QSA]
于 2012-04-09T03:54:02.180 回答