Mod Rewrite创建一个简短的直接链接

时间:2012-04-09 03:43:48

标签: apache .htaccess mod-rewrite url-rewriting

目前在我的网站上,访问者可以访问“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]

1 个答案:

答案 0 :(得分:0)

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

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