某度提供的都是什么乱七八糟的教程,我配好久都没成,明明就是简单的 6行代码,非得把自己的conf贴出了,还语义不明!
我总结一个简单的
错误的注释 写法://
正确的注释 写法:#
server
{
listen 80 default_server;
server_name tlip.cn;
index index.php index.html;
root /www/wwwroot/tlip/;
# 上面的的代码 不是必须,列出来只是为了让你定位下面的重点代码应该放在什么位置。
# 重点 Start
location / { #tp隐藏入口文件
if (!-e $request_filename) {
rewrite ^(.*)$ /index.php?s=$1 last;
break;
}
}
# 重点 End
}
来源于:
ThinkPHP3.2URL重写隐藏应用的入口文件index.php修改前:
tlip.cn/index.php/Home/Index/index // OK
tlip.cn/Home/Index/index // 404
修改后:
tlip.cn/index.php/Home/Index/index // OK
tlip.cn/Home/Index/index // OK
这个叫伪静态(重写规则),在你配置之前使用的是pathinfo,而tp3的默认路由规则看起来只是比pathinfo少一个入口文件。这是两个概念
try_files就不用判断去判断文件是否存在了,而且那个break是不必要的