在搭建typecho开源博客过程中,遇到如下两个问题:

1 搭建完成后,访问根域名正常如:http://typecho.abc.com/或http://typecho.abc.com/均正常;但是当访问其他路径时报404如:http://typecho.bac.com/index.php/start-page.html

2 搜索框搜索时不生效,输入中文搜索时报错404页面不存在

上述两个问题均是nginx配置不当产生,修复如下:


server {
    listen       80;
    server_name  typecho.abc.com;
    index index.html index.htm index.php;
    root /www/typecho;
 
    location ~ .*\.(php|php5)?$
    {
        fastcgi_split_path_info ^(.+\.php)(/.+)$;
        include fastcgi.conf;
        fastcgi_pass  127.0.0.1:9000;
        fastcgi_index index.php;
    }
    
    location / {
        if (-f $request_filename/index.html){
            rewrite (.*) $1/index.html break;
        }
        if (-f $request_filename/index.php){
            rewrite (.*) $1/index.php;
        }
        if (!-f $request_filename){
            rewrite (.*) /index.php;
        }
    }
    
}

重点配置:

1 配置:
fastcgi_split_path_info ^(.+.php)(/.+)$;

2 配置:
if (-f $request_filename/index.html){
   rewrite (.*) $1/index.html break;
 }
if (-f $request_filename/index.php){
   rewrite (.*) $1/index.php;
}
if (!-f $request_filename){
   rewrite (.*) /index.php;
}

参考链接:

http://forum.typecho.org/viewtopic.php?f=4&t=11602&p=43152&hilit=404+%E9%A1%B5%E9%9D%A2%E6%B2%A1%E6%89%BE%E5%88%B0#p43876

https://www.polarxiong.com/archives/typecho-404-error.html

标签: none

添加新评论

选择表情