Heim > Artikel > Backend-Entwicklung > thinkphp 3.2 只能使用默认的控制器与操作方法
事情是这样的,我不能建立自己的控制器,只能使用默认的 /Home/Controller/IndexController/Index/index 方法下的逻辑。
意思就是说即使我在 /Home/Controller/IndexController/Index/hello 访问,依然不生效,以下是代码:
namespace Home\Controller;
use Think\Controller;
class IndexController extends Controller {
public function index(){
$this->show('
欢迎使用 ThinkPHP!
最近在用3.1.3 没遇到你的情况 定义自己的控制器 只要继承框架的Action 应该不会有问题的 楼主在仔细看下 自己安装到使用 有没配置过什么特殊的操作
3.2版本开始就没有action了,用controller代替~~~我没有改了什么配置啊,莫名其妙
看上去你什么也没动
那么访问应是
http://localhost/home/index/index
http://localhost/home/index/hello
看上去你什么也没动
那么访问应是
http://localhost/home/index/index
http://localhost/home/index/hello
终于还是自己解决了问题,看了ThinkPHP里面的源代码,发现用 http://localhost:9999/index.php?c=Read&a=index 这样的URL是能正常访问我自己的控制器和操作的,那问题就在于我的thinkphp不支持PATHINFO方式了!
为什么偏偏我的不支持呢?再看3.2的开发手册,原来是低版本的nginx不支持,如何解决参考以下文章
http://www.smzdy.com/nginx-kai-qi-pathinfo-di-ling-yi-zhong-xie-fa-yi-jing-yong.html
by the way,我的nginx 版本是1.1.19,的确有点旧了!