Typecho评论时可能出现的错误

2020-03-13 09:35:03 浏览数 (1)

今天早上九点多,流金岁月博主在中文博客圈的群里圈了我一下,并发来了以下截图

根据URL得知应该是在发评论的时候出现的错误。很奇怪,因为很久之前这位博友jiuki's blog也给我反馈过一次。说明这问题不是偶然出现的,所以必须要解决才行。

于是打开日志后,发现以下错误信息

代码语言:javascript复制
PHP message: SQLSTATE[HY000]: General error: 1366 Incorrect string value: 'xF0x9Fx98x84' for column 'text' at row 1" while reading response header from upstream

大概意思就是'xF0x9Fx98x84'无法存入'text'这一列,经过百度搜索后得知,MySQL的UTF8编码只支持三个字节的存储,而emoji表情的字符编码需要四个字节。那么要想解决只需将'text'这列的改为utf8mb4编码集即可。

修改列编码集命令

代码语言:javascript复制
ALTER TABLE `表明` CHANGE `列明` `列明` TEXT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL;

以下为phpMyAdmin的操作方法

0 人点赞