linux解决nginx wordpress固定链接404

2020年06月03日 149点热度 0人点赞 0条评论

 

阿布的进击

环境说明

linux:centos 7,阿里云服务器
nginx : nginx/1.16.1
php :7.2.27
wordpress:最新版本

问题描述

在搭建以wordpress为网站系统之前,在本地完成对主题、静态、伪静态的测试,测试过程中都是一些小的问题,随手就解决了,测试环境为windows + phpstudy。

在本地测试固定链接时候,未发现404问题,可能是环境不同,亦或者是使用的非nginx。本地测试一个功能,我会即可同步到linux服务器中的wordpress程序中,这时候发现服务器中会出现404问题。也就是说在Linux中使用Nginx搭建wordpress程序,环境有一定问题。

各种百度,并且一一测试无果情况下,在官网提供的rewrite模板中,参考模板重写了nginx.conf文件规则生效。

解决问题

我们先观察下默认的nginx配置,不知道的小伙伴可以使用:nginx -t查看配置文件位置

include /etc/nginx/conf.d/*.conf;
server {
listen 80 default_server;
listen [::]:80 default_server;
server_name _;
root /var/www/abu;
# 此处添加代码
index index.html index.php;

添加的代码:

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

重启nginx服务:

service nginx restart
或者
/usr/nginx/sbin/nginx -s reload

回到wordpress后台修改固定链接就可以了

参考链接:https://wordpress.org/support/article/nginx/

阿布

源自灵魂深处的自我救赎。

文章评论