按照要求,部署的时候只开放/public目录的访问。需要打开重定向,apache2的话,因为官方已经提供了.htaccess,启用mod_rewrite就可以了。
关于在nginx下的重定向问题,在官方文档URL设计中有说明。
下面是那个重定向的关键配置,摘录自官方文档。

location / { // …..省略部分代码
   if (!-e $request_filename) {
   		rewrite  ^(.*)$  /index.php?s=/$1  last;
    }
}

请特别留意这段配置中有一个s=/$1,在/thinkphp/convention.php中可以找到如下代码

// PATHINFO变量名 用于兼容模式
'var_pathinfo'           => 's',

一开始也是没搞清楚,被坑了好久。

版权声明:如无特别声明,本文版权归 一年四季 所有,转载请注明本文链接。

(采用 CC BY-NC-SA 4.0 许可协议进行授权)

本文标题:《 nginx下部署thinkphp5.1 》

本文链接:https://www.yucanlin.cn/develop/nginx%E4%B8%8B%E9%83%A8%E7%BD%B2thinkphp5.1.html

Contents