Fatal Error:imagecreatefrompng(): gd-png: fatal libpng error: Read Error: truncated data技术
这似乎是一个无解的问题?
Fatal Error:imagecreatefrompng(): gd-png: fatal libpng error: Read Error: truncated data。
面对这种报错,在注册了 shutdown 函数处理用户错误之后,程序直接崩溃退出。PHP 的 gd 怎么不出一个检测图片文件是否是 truncated data 的函数呢?难就难在 PHP 的错误处理和异常处理太分散,太混乱。这样导致 PHP 很难去完成长时间稳定运行的不确定性的任务,特别是网络的操作;so,一个经验丰富的程序员,没个五年 PHP 使用经验,是不敢用它去做这些事情的;线程什么的其实不重要,全世界没几个公司需要开几十个线程加速处理不然就完不成的任务吧。
MySQL 主从同步复制实现步骤技术
MySQL 主从复制手把手教程,本文以最精简的命令实现整个过程,不折腾,不冗长,真材实料。
💪💪💪
主从复制最好遵守从服务器的版本不低于主服务器的版本原则,MariaDB 和 MySQL 之间也许会有一些问题(笔者测试过能正常复制)。整个过程遇到各种问题在所难免,本文基于安全的缘故,增加了 ssl 的步骤。
先配置服务器
一些关键的配置项目
主:
[mysqld] server-id=2 log-bin=mysql-bin innodb_flush_log_at_trx_commit=1 sync_binlog=1 ssl ssl-ca=/var/lib/mysql/certs/ca-cert.pem ssl-cert=/var/lib/mysql/certs/server-cert.pem ssl-key=/var/lib/mysql/certs/server-key.pem bind-address = 0.0.0.0
DKIM=pass 为什么邮件仍是垃圾邮件技术
设置好了 DKIM 后,为什么邮件仍然被 Gmail 判定为垃圾邮件。在设置了全新的 selector 之后仍然不生效,怎么办?
邮件这种东西,时灵时不灵,跟 IP 是绝对有关系的,重新更新新的 selector 仍然不行,换个 IP 倒是可能会有用,这种判定的策略到底是为什么。
针对某些 IP 设置好了 DKIM 仍然不起作用的情况下,尝试了设置 SPF,结果就好了。
附上 SPF 设置方法。对于本域名,直接 a 就可以,笔者更加热衷与使用 a,并不喜欢其他所谓的 mx include 这些。举例如下,增加域名的 TXT 记录。
TXT @ v=spf1 a a:x.lmlphp.com -all
PDOException: SQLSTATE[HY000] [1698] Access denied for user 'root'@'localhost'技术
PDOException: SQLSTATE[HY000] [1698] Access denied for user 'root'@'localhost'
万恶的 MySQL 默认创建的密码为空的 root 账户,这个坑踩了很多次,很容易忽视的一个问题。
这种设计的奇特之处在于,这种不需要密码的空账户,使用 mysql 命令登录,不论输入密码与否,不论输入什么密码,都能成功进入数据库。一些其他的语言数据库驱动则不适用这个,无需密码的账户,输入了哪怕是空密码,也无法访问到数据库,这样的报错,一下子难找出来。
So,谁的问题,是语言的 MySQL 驱动设计问题,还是数据库的问题?
ArchLinux 更新报错解决 ffmpeg2.8 libxfont技术
ArchLinux 更新报错,主要两类错误,一个是 ffmpeg2.8,另一个是 libxfont。
报错如下:
looking for conflicting packages... error: failed to prepare transaction (could not satisfy dependencies) :: ffmpeg2.8: installing libvpx (1.7.0-1) breaks dependency 'libvpx.so=4-64' :: ffmpeg2.8: removing libx264 breaks dependency 'libx264.so=148-64' :: ffmpeg2.8: installing x265 (2.8-1) breaks dependency 'libx265.so=130-64' :: libxfont: removing fontsproto breaks dependency 'fontsproto>=2.1.3'