我正在尝试将我的网址格式从http://jacqueskoekemoer.co.za/article/5
格式化为http://jacqueskoekemoer.co.za/article?i=5
,其中i
将成为数据库中的文章ID。
目前this URL有效。但this one没有。它确实将网址更改为article.php
,但它不会将查询字符串添加到结尾。
我知道这一点,因为它没有出现在print_r($_REQUEST);
或print_r($_GET);
我在.htaccess
文件中出错了什么,或者您能否建议我可以查看其他资源来解决问题?
我使用以下2个网址主要是为了让RewriteRule正常工作。
在.htaccess
文件中,规则重写部分如下所示:
RewriteRule ^article/$ article.php?i=$1 [L] # Handle requests for "article"
#RewriteRule ^article/$/ article.php?i=$1 [NC,L] # Handle requests for "article"
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*)$ $1.php
答案 0 :(得分:1)
使用以下规则:
RewriteEngine on
RewriteRule ^article/(\d+)$ article.php?i=$1 [L]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*)$ $1.php [L]