解决WordPress修改文章固定链接格式以后nginx 404的问题

作者: Lynan 分类: WordPress,建站经验 发布时间: 2018-03-23 10:05

最近在对自己的博客进行相关优化,包括缓存、SEO的处理
而包含文章名的固定链接也是有助于SEO的
因此我在wordpress设置中将文章的固定链接改成了 domain/category/postname这种格式
虽然链接长了一点,但是考虑到不会有人直接使用这个url进行访问所以是没有关系的。

重点


修改完所有文章都nginx 404 not found,从错误提示来看就知道这个错误不是产生于wordpress
这时,我们需要修改nginx的配置。鉴于我的wordpress跑在vhost上,所以我不需要更改nginx的主配置文件,只需修改/usr/local/nginx/conf/vhost/yourdomain.conf
配置文件的结构大概是这样

server {
listen       80;
server_name  www.yourdomain.com;
index index.html index.htm index.php;
root /alidata/www/osetc.com;
//将下面的几行if代码添加到这里
location ~ .*.(php|php5)?$
{
#fastcgi_pass  unix:/tmp/php-cgi.sock;
fastcgi_pass  127.0.0.1:9000;
fastcgi_index index.php;
include fastcgi.conf;
}

添加一下几行进入上面描述的位置:

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;
}

保存。
接下来SSH登录远程服务器,重启nginx

service nginx restart

重新访问你的文章页面,这时应该可以访问了。

发表评论

电子邮件地址不会被公开。 必填项已用*标注