加载中……
WordPress Nginx服务器固定链接报错404 Not fonud解决方案

前言

首先确保使用的服务器是Nginx,然后你可以直接跳到解决方案了!

前些天打算把服务器从Windows搬到Linux上,解决了一大堆杂七杂八的环境问题后,我有个问题始终找不到思路——文章页报错404,当时第一反应是把锅甩给数据库,备份好数据,然后清空数据库,不行,再一狠,重装,也不行。然后,然后就是漫长的一大堆的排查步骤…

最后找到在固定链接使用<朴素>设置可以解决问题,当时就没管了。。。

接触到SEO后我野心勃勃,还是打算拿下WordPress的 固定链接,嘿嘿…嘿嘿嘿…

错误根因

Nginx 没有配置重定向

解决方案

按照nginix的正则表达式的规则,可参考:Nginx 的中文维基

对网站使用的nginx的配置文件(默认是nginx.conf,如果配置过单独的conf,则编辑自己定义的conf)做如下修改:

在    server{}内,root /you_web_server语句下    加入以下代码

rewrite /wp-admin$ $scheme://$host$uri/ permanent;
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

/etc/init.d/nginx restart

然后设置固定链接、保存

Done

 

参考文档:Nginx下修改WordPress固定链接设置后无法访问

 

版权声明: 若无特殊说明,文章均为原创,版权归本文作者所有,转载请保留出处和此说明!
本文链接: WordPress Nginx服务器固定链接报错404 Not fonud解决方案
本文作者: Jan.

评论

  1. Jan 博主
    Windows Chrome
    已编辑
    9月前
    2020-10-23 22:11:24

    发现这种做法会有后台链接出错的问题。分析发现,需要把

    rewrite /wp-admin$ $scheme://$host$uri/ permanent;

    放到 if 判断前以优先重定向后台路径。

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇