[英]Error getting value of a query string
我使用此.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变为home / product。 但是我有一个问题,我有一个带有查询字符串的URL,例如“ home / product_details.php?id = $ id”。 我只能访问“ home / product_details”。 我希望它像“ home / product_details / $ id”。
请我该怎么做以及如何获得$ id的值?
我通常会这样做:
$id = $_GET['id'];
我认为我需要调整.htaccess中的内容,但我不知道。
谢谢。
您可以使用以下规则:
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]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.