Wordfence是一款专为WordPress网站设计的安全防护插件,它集防火墙、恶意软件扫描和实时威胁防御于一体,是全球最受欢迎的 WordPress 安全解决方案之一,当然我也是这之一里面的一个。不过激活插件的时候遇到了一个小插曲,就是插件提示“我们无法更改 .user.ini 文件。由于文件权限问题,WordPress 可能无法写入 .user.ini 文件。请检查权限是否正确,然后重试安装”。这篇文章就是记录一下如何解决这个问题,以防万一,以后在再遇到了可以直接抄作业。
首先说一下我所使用的web环境,使用的是宝塔Linux稳定版10.0.2,安装的LNMP。错误提示里提到了权限问题,于是首先我就登录到宝塔面板进入文件管理,使用右键修改user.ini的权限,如下图。

叮,系统提示“设置成功”,然而却修改了个寂寞。权限依旧是644。于是乎查了查,发现了问题的根源所在,简单说就是这个文件通过chattr命令增加了一个“不可变”属性。既然找到了问题所在,那么对症下药就可以了。通过SSH终端解除这个属性就可以了。
首先直接在文件管理页面点击“终端”,这个功能是很人性化的,省的还得在几个不同的页面来回跳。然后输入以下命令,回车。
chattr -i .user.ini

然后关闭弹出的终端页面。再次在.user.ini上右单击,选择权限,然后修改权限为755/www。

叮,这次终于是设置成功了。

这时候再回到wordpress后台,在Wordfence插件里按照提示继续优化防火墙配置,就可以安装成功了。
你以为这就结束了?当然是不能结束啊。你给人.user.ini改完了的属性,得给人改回去啊。毕竟安全第一啊。步骤和之前相反。首先是修改.user.ini属性,改回644/root,然后再终端输入以下命令再次加上“不可变”属性。(图就不放了。因为跟前面的一样。)
chattr +i .user.ini
好了,就记录到这。下次见。