nginx安装typecho后台访问报404的解决方法

很多人都知道,wordpress虽然功能强大,但是比较臃肿,尤其是后台体验很不好,对于优化能力和对php了解较少的人来说,这还是很难做优化的。但是国人开发的typecho这个开源博客就特别舒服,让人更专注于写作,扔掉其他没用的东西。但是typecho有一个问题,就是需要PATH_INFO但是nginx默认不开启PATH_INFO,所以需要我们手动开启PATH_INFO来支持typecho。

对于正在使用宝塔面板的我,还是比较简单,因为在设置项中有

图片[1]-nginx安装typecho后台访问报404的解决方法-起步者

这样我们就可以使用typecho了。

但是对于其他的情况,有如下方法

请求的网址是/abc/index.php/abc

PATH_INFO的值是/abc
SCRIPT_FILENAME的值是$doucment_root/abc/index.php
SCRIPT_NAME /abc/index.php

旧版本的nginx使用如下方式配置

 

location ~ .php($|/) {
    set $script $uri;
    set $path_info “”;
    if ($uri ~ “^(.+.php)(/.+)”) {
        set $script $1;
        set $path_info $2;
    }
    fastcgi_pass 127.0.0.1:9000;
    fastcgi_index index.php;
    fastcgi_param SCRIPT_FILENAME $document_root$script;
    fastcgi_param SCRIPT_NAME $script;
    fastcgi_param PATH_INFO $path_info;
}
新版本的nginx也可以使用fastcgi_split_path_info指令来设置PATH_INFO,旧的方式不再推荐使用,在location段添加如下配置。
location ~ ^.+.php {
  (...)
  fastcgi_split_path_info ^((?U).+.php)(/?.+)$;
  fastcgi_param SCRIPT_FILENAME /path/to/php$fastcgi_script_name;
  fastcgi_param PATH_INFO $fastcgi_path_info;
  fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;
  (...)
}

 

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容