建站笔记-宝塔迁移1Panel搭建Typecho时常见问题


评论区有朋友提醒,目前1Panel最新版使用Docker部署已经不会再出现404和奇怪报错啦 | 伪静态肯定还是要手动设置的o((>ω< ))o

I.登录页404

前阵子更换服务器,把原来的宝塔面板换成了1Panel,发现博客数据库和网站文件夹直接迁移过去无法正常使用,在Typecho登录页会报404错误,多次尝试后,在1Panel的Github issues里找到了解决办法:

在1Panel部署的PHP环境中,配置文件里,在OpenResty配置文件中加入以下四行内容

    (省略)
    location ~ [^/]\.php(/|$) {
        fastcgi_pass 127.0.0.1:9000; 
        include fastcgi-php.conf; 
        include fastcgi_params; 
        fastcgi_split_path_info ^(.+?\.php)(/.*)$;   #这行
        set $path_info $fastcgi_path_info;   #这行
        fastcgi_param PATH_INFO $path_info;   #这行
        fastcgi_param SCRIPT_NAME $fastcgi_script_name;   #这行
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; 
    }
    if ($scheme = http) {
    (省略)

保存重载即可。

根据Typecho官方文档,这是Nginx搭建站点时没配置支持pathinfo导致。(不过那个文档好久没更新了,里面提到的办法并不适用,跟着本文来即可)

II.关于奇怪报错Unmatched '}'

这个问题在我的博客装载了LoveKKCommentModify插件后出现,这是因为该插件在编写时使用了PHP短标签,但是1Panel的默认PHP配置并没有开启short_open_tag,于是出现这个报错。这时候只需要在网站设置->PHP中将short_open_tag开启重载即可。

III.关于权限

由于1Panel采用容器方式管理网站应用,对应网页文件夹的权限不像宝塔面板可以全部是0(root)。权限出错时,typecho程序本身或者安装的插件可能因此出现故障。因此,在对网站目录进行增删文件操作后,记得修改目录权限。

最简单的方法是:

1.点击对应站点域名,打开站点设置 2.找到网站目录一栏 3.在运行用户/组后方直接点保存

如此便可

III.文末闲话

从我遇到的这些问题可以看出,宝塔像是把你可能遇到的问题给解决了(当然也有可能是因为宝塔用了LNMP),于是在建站的时候,不需要修改任何配置,将Typecho文件夹一解压就能用。而1Panel目前提供的PHP运行环境并没有预设这些配置,导致新手建站出现困难。

声明:Youwen|版权所有,违者必究|如未注明,均为原创|本网站采用BY-NC-SA协议进行授权

转载:转载请注明原文链接 - 建站笔记-宝塔迁移1Panel搭建Typecho时常见问题


挖坑不填浪三年