我需要重写这个网址:
http://localhost/blog/post.php?id=48
成
http://localhost/blog/post/48
这是我的xampp的localhost。
我创建了.htaccess文件并编写了以下代码。
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^post/([0-9]+)/?$ post.php?id=$1 [NC,L]
</IfModule>
我尝试过重定向和其他所有东西。一切正常,但我的重写规则本身无法正常工作。我搜索并尝试了所有选项,但我没能成功。 Plz有人帮我解决这个问题!!
答案 0 :(得分:0)
^post
是您的问题,这意味着帖子是您路径的第一部分,而不是blog
。您是否尝试过^blog/post...
:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^blog/post/([0-9]+)/?$ blog/post.php?id=$1 [NC,L]
</IfModule>
答案 1 :(得分:0)
最后使用以下代码:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /blog/ # This is the thing which made me struck with this
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^post/([0-9]+)/?$ post.php?id=$1 [NC,QSA]
</IfModule>