Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/wix/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php .htaccess由本地服务器和产品服务器进行不同的解释_Php_Apache_.htaccess_Mod Rewrite - Fatal编程技术网

Php .htaccess由本地服务器和产品服务器进行不同的解释

Php .htaccess由本地服务器和产品服务器进行不同的解释,php,apache,.htaccess,mod-rewrite,Php,Apache,.htaccess,Mod Rewrite,我的.htaccess如下所示 RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteRule .* index.php/$0 [L] 当我访问http://localhost/prefix/test我的php脚本收到: $_SERVER['REDIRECT_URL'] => string '/prefix/test/' $_SERVER['REDIRECT_QUERY_STRING'] // not set $_SE

我的
.htaccess
如下所示

RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule .* index.php/$0 [L]
当我访问
http://localhost/prefix/test
我的php脚本收到:

$_SERVER['REDIRECT_URL'] => string '/prefix/test/'
$_SERVER['REDIRECT_QUERY_STRING'] // not set
$_SERVER['REDIRECT_URL'] => string '/prefix/test/'
$_SERVER['REDIRECT_QUERY_STRING'] => string '/test/'
$_SERVER['REDIRECT_URL'] => string '/prefix/'  // totally wrong
$_SERVER['REDIRECT_QUERY_STRING'] => string '/'
这真是太棒了。不幸的是,当我访问
http://domain.hostinger.pl/prefix/test
我收到了

No input file specified.
我将我的
.htaccess
更改为:(我添加了

我不再接收
未指定的输入字段
,但在本地服务器上,我的php脚本接收:

$_SERVER['REDIRECT_URL'] => string '/prefix/test/'
$_SERVER['REDIRECT_QUERY_STRING'] // not set
$_SERVER['REDIRECT_URL'] => string '/prefix/test/'
$_SERVER['REDIRECT_QUERY_STRING'] => string '/test/'
$_SERVER['REDIRECT_URL'] => string '/prefix/'  // totally wrong
$_SERVER['REDIRECT_QUERY_STRING'] => string '/'
我的产品脚本收到:

$_SERVER['REDIRECT_URL'] => string '/prefix/test/'
$_SERVER['REDIRECT_QUERY_STRING'] // not set
$_SERVER['REDIRECT_URL'] => string '/prefix/test/'
$_SERVER['REDIRECT_QUERY_STRING'] => string '/test/'
$_SERVER['REDIRECT_URL'] => string '/prefix/'  // totally wrong
$_SERVER['REDIRECT_QUERY_STRING'] => string '/'

有人能告诉我该怎么做才能让我的prod脚本接收到正确的参数吗?(就像这张来自本地脚本的原始
.htaccess
)?或者告诉我为什么会发生这种情况?

检查。我相信您需要一个不同的重写规则。@forrestmid不幸的是,这对我不起作用:/您是否检查了任何其他
$\u服务器
变量,以查看您要查找的路径是否在其他地方?我相信这值得一看。您可以只打印($\u SERVER)
,但如果您确定您的Web服务器是安全的,因为它将转储环境变量。@我使用的forrestmid Framework仅使用
重定向URL
重定向查询字符串
设置路由。请尝试
重写cond%{REQUEST\u FILENAME}-f
重写规则^index.php[QSA,L]
。检查。我相信您需要一个不同的重写规则。@forrestmid不幸的是,这对我不起作用:/您是否检查了任何其他
$\u服务器
变量,以查看您要查找的路径是否在其他地方?我相信这值得一看。您可以只打印($\u SERVER)
,但如果您确定您的Web服务器是安全的,因为它将转储环境变量。@我使用的forrestmid Framework仅使用
重定向URL
重定向查询字符串
设置路由。请尝试
重写cond%{REQUEST\u FILENAME}-f
重写规则^index.php[QSA,L]