描述
- 更换了新的服务器后我重新安装了wordpress,wordpress默认的链接格式不是朴素,此时是正常的,但是当我将链接格式改为朴素然后再改为自定义时,文章链接就无法工作了
- 安装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
然后应该就没有问题了

Comments NOTHING