运行环境:

nginx+linux

问题描述:

网站可正常打开,文章列表标题,描述正常,无法打开文章页

问题原因:

PHP不支持pathinfo

Typecho官方解决方案,会复现:

http://docs.typecho.org/servers

最终解决方法:

NginxPHP段改成如下形式,就可以访问文章页了

location ~ .*\.php(\/.*)*$ {
        root           html;
        fastcgi_pass   127.0.0.1:9000;
        fastcgi_index  index.php;
        fastcgi_split_path_info ^(.+?.php)(/.*)$;
        set $path_info "";
        set $real_script_name $fastcgi_script_name;
        if ($fastcgi_script_name ~ "^(.+?\.php)(/.+)$") {
                set $real_script_name $1;
                set $path_info $2;
        }
        fastcgi_param SCRIPT_FILENAME /usr/share/nginx/html$real_script_name;
        fastcgi_param SCRIPT_NAME $real_script_name;
        fastcgi_param PATH_INFO $path_info;
        include        fastcgi_params;
    }

也就是添加fastcgi_split_path_info ^(.+?.php)(/.*)$;Nginx设置PATH_INFO值。

sudo systemctl restart nginx
sudo systemctl restart php-fpm

重启服务器以生效