我最近更改了我的主机。旧的服务器有php 5.3,最新的有php 5.6。这种变化在主机努力,使我的网站使用PHP 7Htaccess重定向问题与查询字符串参数不是
不过,我所遇到的问题与htaccess的重定向兼容的一步。
我htaccess文件看起来像下面
DirectoryIndex index.php
Options +FollowSymLinks
RewriteEngine On
RewriteRule ^company/([0-9]+)/?$ company.php?company_id=$1 [L]
所以,当我去到页面URL mydomain.com/admin/company/92
我似乎并没有得到重定向的URL的要求,即mydomain.com/admin/company.php?company_id=92
这是某些输出的从印刷$_SERVER
[REDIRECT_SCRIPT_URL] => /admin/company/92/
[SCRIPT_FILENAME] => /htdocs/myproj/admin/company.php
[REDIRECT_URL] => /admin/company.php/92/
[REQUEST_METHOD] => GET
[QUERY_STRING] =>
[REQUEST_URI] => /admin/company/92/
[SCRIPT_NAME] => /admin/company.php
[STATUS] => 200
[ORIG_PATH_INFO] => /92/
[ORIG_PATH_TRANSLATED] => /htdocs/myproj/admin/company.php
[PHP_SELF] => /admin/company.php
[argv] => Array
(
)
[argc] => 0
)
我已经得到了我的本地PHP 5.3和相同的代码在我的本地工作正常。我该如何解决这个问题?
in'^ company'这个'^'将它粘到字符串的开头。所以在'公司'之前的任何事情都会使它无法匹配。您可以将其更改为'RewriteRule/company /([0-9] +)/?$ /company.php?company_id=$1 [L]'例如 –
我试过删除^但我仍然没有收到任何QUERY_STRING – NoNice