WordPress改固定链接后文章页面无法访问,页尾音乐播放器插件无法工作问题

暮雨٩(๑˃̵ᴗ˂̵๑)۶终将落下 发布于 2024-07-22 812 次阅读


描述

  1. 更换了新的服务器后我重新安装了wordpress,wordpress默认的链接格式不是朴素,此时是正常的,但是当我将链接格式改为朴素然后再改为自定义时,文章链接就无法工作了
  2. 安装Sakurairo主题后,页尾的音乐播放器无法显示

问题一解决

这个问题基本都是RewriteRule的问题,网上存在很多解决方案,但是大部分都会去修改Apache或者nginx的rewrite规则,但是我亲测wordpress 6.6版本更改链接格式后会自动重新rewrite规则,这里并没有问题。这里给出一个全流程检查,便于排查问题

步骤一 检查是否安装和开启rewrite模块

查找apache的配置文件位置

apache2 -V | grep SERVER_CONFIG_FILE

开启rewrite,去掉下面的注释

#LoadModule rewrite_module modules/mod_rewrite.so

步骤二 启用url重写

检查 sites-enabled 目录,通常存在一个默认的配置文件,我的配置文件是这样的

sudo nano /etc/apache2/sites-enabled/000-default.conf

确保存在下面的内容

<Directory /var/www/html>
    Options Indexes FollowSymLinks
    AllowOverride All
</Directory>

步骤三 检查apache或者nginx的rewriterule

我的rewriterule在/var/www/html/.htacess文件中,其中有wordpress自动生成的下面内容

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

最后记得重启apache服务器。

经过这三步检查,理论上讲应该就不会存在什么问题了。

问题二解决

我遇见的这个问题相对简单,打开wordpress的站点健康

对于刚安装好的服务器和wordpress,可能存在一些php module没有安装,上面图片没有显示是因为我刚刚已经安装过了,可以使用apt命令安装确实模块,如下

sudo apt-get install php-curl php-imagick php-mbstring php-zip php-intl

然后应该就没有问题了