wordpress迁移搬家后无法上传图片和更新的解决办法

如果你的wordpress是以打包整个文件夹的方式搬家的话,很有可能会出现博客能访问但无法上传图片和更新插件的情况。

“无法将上传的文件移动至wp-content/uploads/…”

这是由于用户组用户名变更导致权限不够。

解决办法1:赋予整个目录777的权限

chmod 777 目录名

只是这个方法稍微有点风险,毕竟是任何用户组用户名都有修改删除的权限。

解决办法2:更改整个目录的用户组用户名

chown 用户组 目录名
chgrp 用户名 目录名

wordpress登录开启二次验证

wordpress两步验证,首推插件:Two Factor

#设置

用户——》个人资料

#二次验证种类

  • 电子邮件
  • 基于时间的一次性密码(TOTP)
  • FIDO U2F安全密钥
  • 备用验证码(一次性使用)

1,电子邮件

如果wordpress有配置过邮箱SMTP(可以参考本站之前的文章wordpress实现站内邮件发送插件WP Mail SMTP),我个人比较推荐默认用这个方式。既方便,也不用担心二次验证设备的万一遗失带来的麻烦。

2,基于时间的一次性密码(TOTP)

这种方法是最传统,几乎兼容市面上所有免费的二次验证app,比如Google Authenticator、Authy、Duo Mobile之类。

用法是用app扫页面的二维码,之后将app内的限时一次性密码输入到Two Factor的后台与之绑定就可以了。

3,FIDO U2F安全密钥

类似于U盾,需要单独购买设备,不推荐。

4,备用验证码(一次性使用)

强烈建议使用。Two Factor会生成10组一次性密码以备不时之需。

以上4种验证方式可以单独使用,也可以同时使用。可以选你最常用最方便的作为默认验证模式。

wordpress实现站内邮件发送插件WP Mail SMTP

wordpress内要实现诸如注册时候邮箱验证、评论通知、异常通知或一些插件自带的邮件通知功能都需要smtp的邮件发送功能。

#准备工作

  • 注册一个免费的企业邮箱。网易、腾讯、阿里都有提供。
  • wordpress内安装插件WP Mail SMTP。

#简单配置WP Mail SMTP

这里以网易免费企业邮箱为例。(其他品牌的企业邮箱请自行查询)

SMTP主机:smtp.ym.163.com
加密:SSL
SMTP端口:994 (无SSL的端口为25)
自动TLS:默认选项
认证:默认选项
SMTP用户名:就是邮箱名
SMTP密码:就是邮箱密码

#配置DMARC

关于DMARC是什么可以看我站另一篇博文,什么是 DMARC 记录以及如何创建一个案例

如果您使用的是WP Mail SMTP,您还可以通过发送测试电子邮件来检查 DMARC 是否正常工作。在 WordPress 仪表板中,单击WP Mail SMTP,然后单击Settings,然后单击Email Test选项卡。

在 WordPress 中测试电子邮件的 DNS

使用电子邮件测试页面上的表单发送测试电子邮件。

在 WP Mail SMTP 中发送电子邮件测试

发送电子邮件后,向下滚动并检查是否有警告消息。

应改进可交付性警告消息

向下滚动一点。您是否看到一条警告说它看起来没有为您的域设置 DMARC

WP 邮件 SMTP DMARC 警告

这意味着:

  • 您的 DNS 区域中没有 DMARC 记录
  • 您的 DMARC 记录尚未传播
  • DMARC 记录的格式可能不正确。

以阿里云DNS解析为例

主机记录:_dmarc
记录类型: TXT
解析线路:默认
记录值:v=DMARC1; p=none; fo=1; rua=mailto:xxx@abc.com  (xxx@abc.com换成你的邮箱)

AMH面板给wordpress配置redis缓存

以前写过两篇wordpress配置redis的文章,

今天详细的写下使用AMH面板(6.2版本)如何快速给wordpress配置redis缓存。

前置

建立网站环境(比如lnmp)和wordpress,这里就不赘述了。

1,下载redis服务端和客户端(php扩展)

AMH面板——》高级——》分别下载redis和pecl_redis

2,在网站环境中配置php扩展

AMH面板——》wordpress所在的网站环境——》扩展安装

选择pecl_redis,并提交

3,在wordpress中安装redis插件

插件名称:Redis Object Cache

如何设置Redis Object Cache,可以参考这篇博文wordpress配置redis(2)

overview中可以查看连接状态,如果status显示connected说明连接成功。

Metrics中可以查看到缓存连接时间,命中率等等。

另外在wordpress根目录下有个wp-content的目录,下面有个object-cache.php的文件,千万别误删了。