版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/c332030/article/details/88984562
(一)安装必要插件并启用
WPJAM BASIC插件
(二)安装微信机器人插件
- 安装好后,先别点启用,不然会出现如下情况
- 查看插件说明:说php版本要在7.2及以上版本。而博主的php是5.4的,因而要升级到PHP7.2
(三)centOS 6.x PHP5.4升级到PHP7.2
- 查看已安装php
- 将上面列出的使用
yum remove
进行移除yum remove php56*
- 安装php依赖组件
yum -y install wget vim pcre pcre-devel openssl openssl-devel libicu-devel gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel ncurses ncurses-devel curl curl-devel krb5-devel libidn libidn-devel openldap openldap-devel nss_ldap jemalloc-devel cmake boost-devel bison automake libevent libevent-devel gd gd-devel libtool* libmcrypt libmcrypt-devel mcrypt mhash libxslt libxslt-devel readline readline-devel gmp gmp-devel libcurl libcurl-devel openjpeg-devel
- 进入家目录下的packages目录,然后下载php7.2压缩包,然后解压
cd /root/packages/ wget http://am1.php.net/distributions/php-7.2.1.tar.gz tar -xzvf php-7.2.1.tar.gz cd php-7.2.1
- 配置
./configure --prefix=/usr/local/php72 \ --with-config-file-path=/usr/local/php/etc \ --enable-fpm \ --with-fpm-user=nginx \ --with-fpm-group=nginx \ --enable-mysqlnd \ --with-mysqli=mysqlnd \ --with-pdo-mysql=mysqlnd \ --enable-mysqlnd-compression-support \ --with-iconv-dir \ --with-freetype-dir \ --with-jpeg-dir \ --with-png-dir \ --with-zlib \ --with-libxml-dir \ --enable-xml \ --disable-rpath \ --enable-bcmath \ --enable-shmop \ --enable-sysvsem \ --enable-inline-optimization \ --with-curl \ --enable-mbregex \ --enable-mbstring \ --enable-intl \ --with-libmbfl \ --enable-ftp \ --with-gd \ --with-openssl \ --with-mhash \ --enable-pcntl \ --enable-sockets \ --with-xmlrpc \ --enable-zip \ --enable-soap \ --with-gettext \ --disable-fileinfo \ --enable-opcache \ --with-pear \ --enable-maintainer-zts \ --with-ldap=shared \ --without-gdbm
- 编译 ,安装
make make install
- 将*.default文件拷贝至 各自所在的目录下
cp php.ini-development /usr/local/php72/etc/php.ini cp /usr/local/php72/etc/php-fpm.conf.default /usr/local/php72/etc/php-fpm.conf cp /usr/local/72/etc/php-fpm.d/www.conf.default /usr/local/php72/etc/php-fpm.d/www.conf
- 复制php的服务控制脚本,并赋予权限
cp /root/packages/php-7.2.1/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm chmod 755 /etc/init.d/php-fpm
- 将服务添加至chkconfig,并设置开机启动
chkconfig --add php-fpm chkconfig --levels 235 php-fpm on
- 下面可以使用service对php-fpm进行控制了
- 升级后出现了error establishing a database connection错误,解决详见下一篇博文
(四)设置微信机器人
- 输入微信公众号的AppID和AppSecret
2 - 添加自定义回复的时候出现了
Table 'wordpress.wp_weixin_replies' doesn't exist
错误 - 因而在wp-config.php配置文件里,添加调试信息
define('WP_DEBUG',true); define('WP_DEBUG_DISPLAY',true); //define('WP_DEBUG_LOG',true);
- 打开检查数据表页面,查找错误信息
- 错误是创建所需要的表失败,而失败的原因是
Unknown character set: 'utf8mb4'
未知的字符集 utf8mb4(utf8 most byte 4) - 查找了资料 发现是博主的MySQL版本太低导致的…。
- 当前正在使用的是mysql5.1版本,而utf8mb4是从mysql5.7开始支持的,so,,,升级mysql???
别闹了…刚刚升级到php7.2带来的一系列问题还没有解决完呢,,,
- 解决办法分两种,自行采用:
- 升级mysql到5.7(参照另一篇博文)
- 将微信机器人插件中涉及到创建表的文件里的utf8mb4通通改成utf8(博主暂时采用这种办法)
(五)修改微信机器人插件的创建表的编码问题
- 文件中创建表的sql语句,基本如下:
CREATE TABLE IF NOT EXISTS wp_weixin_messages ( `id` bigint(20) NOT NULL auto_increment, `appid` varchar(32) NOT NULL, `MsgId` bigint(20) NOT NULL, `FromUserName` varchar(30) NOT NULL, `MsgType` varchar(10) NOT NULL, `CreateTime` int(10) NOT NULL, `Content` longtext NOT NULL, `Event` varchar(50) NOT NULL, `EventKey` varchar(50) NOT NULL, `Title` text NOT NULL, `Url` varchar(255) NOT NULL, `MediaId` varchar(500) NOT NULL, `Response` varchar(255) NOT NULL, PRIMARY KEY (`id`) ) DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci
- 要修改的地方就是最后一句的两处:
- DEFAULT CHARSET=utf8mb4 (默认编码规则)
- COLLATE=utf8mb4_unicode_ci (默认排序规则)
- 要修改为:
- DEFAULT CHARSET =utf8
- COLLATE = utf8
- 查看插件所在目录下所有含有utf8mb4的文件:
grep -rn utf8mb4 /var/www/wordpress/wp-content/plugins/weixin-robot-advanced/
- 找到的文件还不少呢
-
下面进行批量字符串替换
sed -i "s/CHARSET=utf8mb4/CHARSET=utf8/g" `grep -rl utf8mb4 /var/www/wordpress/wp-content/plugins/weixin-robot-advanced/` sed -i "s/COLLATE=utf8mb4_unicode_ci/COLLATE=utf8_unicode_ci/g" `grep -rl utf8mb4 /var/www/wordpress/wp-content/plugins/weixin-robot-advanced/`
- 修复成功
参考资料:https://www.jianshu.com/p/546c94e0bd95
参考资料:http://www.laozuo.org/9288.html
参考资料:grep:https://blog.csdn.net/BabyFish13/article/details/79709028
参考资料:字符串替换:https://www.cnblogs.com/qq78292959/archive/2012/03/08/2385080.html
转载请注明:大魔王ISDevil's Blog » wordpress与微信公众号对接