网站从wampserver环境换到 Nginx 环境中 突然出现 缺少index开头的地址。但是转到Nginx环境下发现U方法解析后的地址原本是index.php?xxx却成了.php?xxx,少了个index,查阅了一些资料,发现tp框架使用U方法解析地址时, 在Nginx 服务器上可能会遇到路由跳转不过去前面带点的地址(如:./xxx)
解决方法 :
1
找到applications/Conf/的配置文件 config.php
return array(
'URL_MODEL'=>2, //关于URL更多说明请参考Tinkphp/Common/convention.php
);
2,
解决这个问题很简单,可以在tp的入口文件 index.php 里定义个常量
define(‘_PHP_FILE_’,$_SERVER[‘SCRIPT_NAME’]); 注意逗号大小写,
同时了伪静态规则给配上
location / {
if (!-e $request_filename){
rewrite ^/(.*)$ /index.php/$1 last;
}
}