我使用此.htaccess文件删除了项目文件夹中扩展名为.php的所有文件
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^(.*)$ $1.php?%1 [NC,L,QSA]
现在,例如,home / product.php成为家庭/产品。 但是我有一个问题,我有一个像这样的查询字符串的URL - “home / product_details.php?id = $ id”。我只能访问“home / product_details”。我希望它像“home / product_details / $ id”。
请问我该怎么做以及如何获得$ id的价值?
我通常会这样做:
$id = $_GET['id'];
我想我需要在.htaccess中调整一些内容,但我不知道。
谢谢。
答案 0 :(得分:0)
您可以使用以下规则:
RewriteEngine on
#remove .php exten
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule (.*?)/?$ $1.php [L]
#rewrite /file/foobar to /file.php?id=foobar
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.+)/(.+)/?$ /$1.php?id=$1 [L]