我正在运行 Code Igniter,我的 .htaccess 是:
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?$1 [L]
RedirectMatch 404 /\\.svn(/.*|$)
</IfModule>
然后我意识到没有 $_GET 变量通过。
我按照一些说明创建 .htaccess 以与 Code Igniter 一起使用,并将 .htaccess 替换index.php?$1
为index.php/$1
. 这适用于 linux 机器,但在 Windows 上则不行。我确定这是一个服务器配置,但我不知道是哪一个。
假设我访问
http://localhost/directory/this_is_query/string_parameters?with_some=additional_ones
on .htaccess的$_SERVER['QUERY_STRING']
值是:index.php?$1
string(31) "this_is_query/string_parameters"
并与index.php/$1
:
No input file specified.
在 Linux 机器上,我有:
string(31) "with_some=additional_ones"
作为回应index.php/$1
。
有什么想法吗?
我正在调试$_SERVER['QUERY_STRING']
FIRST 行上的变量index.php
,与 Code Igniter 没有任何交互。
是的,我有mod_rewrite
。
这与Codeigniter 没有指定输入文件错误相同
在问这个问题之前,我看到了这个问题。我仍然有这个问题。
我添加了新信息。