PHP-$\u服务器['QUERY\u STRING']为空

PHP-$\u服务器['QUERY\u STRING']为空,php,.htaccess,Php,.htaccess,当我请求host.com/?123时,我的服务器上有一个索引页 echo $_SERVER['QUERY_STRING']; // returns 123 as expected 但是如果我执行一个没有“?”字符的请求:host.com/123 在这种情况下,查询字符串始终保持为空 但我不确定如何配置.htaccess才能读取查询 如何让它读取完整的请求URL?谢谢 尝试将其添加到文档根目录的htaccess文件中: RewriteEngine On RewriteCond %{REQUE

当我请求host.com/?123时,我的服务器上有一个索引页

 echo $_SERVER['QUERY_STRING']; // returns 123 as expected 
但是如果我执行一个没有“?”字符的请求:host.com/123 在这种情况下,查询字符串始终保持为空

但我不确定如何配置.htaccess才能读取查询


如何让它读取完整的请求URL?谢谢

尝试将其添加到文档根目录的htaccess文件中:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /?$1 [L,QSA]
这使得当您请求/abcd1234时,脚本应该将abcd1234视为查询字符串


这条规则有两个条件-f,检查请求是否不针对现有文件,以及-检查请求是否不针对现有目录。如果两者都满足,则请求只需重写为查询字符串。

尝试将其添加到文档根目录的htaccess文件中:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /?$1 [L,QSA]
这使得当您请求/abcd1234时,脚本应该将abcd1234视为查询字符串

这条规则有两个条件-f,检查请求是否不针对现有文件,以及-检查请求是否不针对现有目录。如果两者都满足,则请求将被简单地重写为查询字符串。

short-answer mod\u rewrite short-answer mod\u rewrite