wordpress搬家后,更改固定链接404文章无法打开,找不到网页与解决办法

出现这个问题的原因可能是服务没有设置伪静态设置,需要配置nginx服务器或者apach服务器

1.问题描述

WordPress中修改固定链接,如下。

保存后再打开网页出现类似于如下404错误。

2.解决办法

打开Nginx的配置文件(如果你没有自己写过那就是默认的nginx.conf),我的文件路径是/usr/local/nginx/conf/nginx.conf。 如果不习惯直接在命令行用VI修改,可以在XShell中打开FTP,将文件传输到本地进行修改,完成后再传到服务器上覆盖。在本地用VS Code打开如下,或者是是小皮面板的设置页面:

然后找到Server大括号,在里面添加上下面这几行语句。

复制代码
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;
    }
}
rewrite /wp-admin$ $scheme://$host$uri/ permanent;

添加完成后截图如下。

红色框出的就是我们添加的内容。然后保存配置文件,再上传到服务器覆盖原始文件。 最后使用命令service nginx reload重启Nginx服务,使配置生效。

3.解决效果

再次打开博客会发现问题解决了,如下图。

我们已经把默认的https://xuhui.in/?p=33改成了https://xuhui.in/33/。 其实这个问题很常见,WordPress官方甚至还有个专门的网页来介绍如何解决这个问题。 现在觉得只是接触到了WordPress的冰山一角,还有更多东西等待去探索。

4.另一个话题

由于我服务器是先装的SSR,然后又装的LNMP环境和WordPress,导致装完之后发现SSR不能用了,百度也找不到解决办法。 我对于这一块也不太了解,找不到问题在哪,估计是LNMP环境的什么东西和SSR冲突了,导致SSR不能用了。 最后无奈之下只能自己测试,在DigitalOcean上新建了个Droplet,先装了LNMP环境,再装SSR,发现居然没问题了,我的猜测可能是正确的。 但没办法,只好把我现在用的这个服务器给格式化了,先装LNMP环境,再装SSR,果然是可以的。 所以这里以"惨痛"经历(幸好我服务器里没什么东西)告诫一下,如果SSR要和LNMP共存,建议先装LNMP,再装SSR。否则可能就没救了,只能重装服务器,比较悲催了。还有如果服务器在外网,而且东西比较多,建议经常备份一下,防止指不定哪天服务器就连不上了(惨痛经历)。

相关推荐
Web极客码2 天前
如何让用户订阅WordPress评论?提升用户互动的有效策略
运维·服务器·wordpress
fobwebs2 天前
Wordpress Xstore 主题安装Elementor Pro 后找不到某些Elements 组件的解决方法
element·wordpress·form·xstore·pro elements·elementor pro
代龙涛3 天前
WordPress sidebar.php 侧边栏开发教程
开发语言·php·wordpress
代龙涛4 天前
WordPress header.php 与 footer.php 模板结构详解
开发语言·php·wordpress
Web极客码9 天前
如何在WordPress中添加动态内容
服务器·前端·wordpress
tommyjiatong12 天前
WordPress电商展示站服务器迁移指南
服务器·数据库·wordpress
IT大白鼠13 天前
WordPress组合漏洞wp2shell技术分析报告
wordpress·安全漏洞·wp2shell 漏洞
Markk16 天前
Wordpress及第三方支持工具docker容器化搭建
wordpress
Web极客码20 天前
WordPress SEO优化:提升网站排名的13个关键步骤
服务器·seo·wordpress
tommyjiatong1 个月前
解决 WordPress 必须带 index.php 才能访问及无法提交站点地图(Sitemap)的底层原理与方案
php·网站搭建·wordpress