【已解决】宝塔环境下WordPress在修改固定链接后文章页面404无法访问

今天使用宝塔搭建了一个新的Wordpress网站,在对固定链接进行完美URL自定义后(/%category%/%postname%.html),文章页出现了404无法访问的情况。

宝塔环境下Wordpress在修改固定链接后文章页面404无法访问
宝塔环境下Wordpress在修改固定链接后文章页面404无法访问

因为之前搭建的网站都是手动部署LAMP环境,而此次是使用宝塔一键部署LNMP环境,所以先根据之前的经验进行了一些尝试,但是无法解决此问题。

WordPress固定链接的形式

WordPress 后台(设置 — 固定链接)可以对文章的URL结构进行自定义,本人倾向于采用“分类”+“文章标题”结构的URL设计,如下所示:

  •    /%category%/%postname%.html

该结构的URL,无论对搜索引擎还是对用户来说都比较友好,容易理解文章内容和网站内容的结构关系。但是在修改固定链接后,访问文章出现404错误,其他页面可正常访问。

解决方案

下面的代码是网上博主的解决方案。使用方法是:

  • 1、登录宝塔面板;
  • 2、导航至网站 —— 设置 —— 伪静态,在伪静态规则列表中,选择 WordPress,就会自动添加下面的代码,然后保存。
location / {
try_files $uri $uri/ /index.php?$args;
}
rewrite /wp-admin$ $scheme://$host$uri/ permanent;

虽然,有很多博主通过上面的步骤,解决了文章页面404的问题,但是很遗憾,该方案对我的网站无效。在经过上面的方法后,我的网站文章页面仍然是404无法访问的状态。

最后,本人通过下面的代码,成功的解决了文章页面404无法访问的问题。具体操作步骤如下:

  • 1、登录宝塔面板;
  • 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;
    }
    rewrite /wp-admin$ $scheme://$host$uri/ permanent;

如果各位站长朋友使用相同的宝塔环境,也遇到了在设置完 WordPress 完美固定链接结构后文章页面404无法访问的问题,不妨尝试上面提供的两种解决方案。

原创文章,作者:牛奇网,如若转载,请注明出处:https://www.niuqi360.com/wordpress/pretty-permalinks-on-wordpress-on-lemp-nginx-404/

发表评论

登录后才能评论