本人比较懒,一直使用MAMP集成环境包作为本地机器的开发环境。最近的一个需求中,需要添加对webp格式图片的支持。

开启MAMP的Imagick扩展,发现并不支持webp,决定手工编译下Imagick扩展,使用Homebrew搞定本地ImageMagick后,开始编译MAMP的扩展了。

过程比较简单,主要是注意下MAMP的php-config和phpize目录及Homebrew安装的ImageMagick目录。下面步骤记录下也供大家参考:

最近自己搭建在 BAE 下的mantis一直发送不了邮件,因为使用频率不高一直没在意。以为是因为最近Gmail在国内被墙造成的(mantis使用Gmail的smtp账号进行发送),昨天换了n多账号,改了n次mantis的配置文件,都无法发送。

发现问题不在账号,而是百度应用引擎(BAE)屏蔽了php的很多函数。造成phpmailer的smtp相关代码失效。

我的解决方案是在不改变mantis代码的基础上,使用cron任务,配合简单脚本,直接对mantis的email表进行处理。本来打算使用 BAE 的消息队列进行mail发送,经过简单测试,发现 BAE 的消息队列发送email会对email的内容进行关键词审核,造成大量了email发送失败。

没办法,最终在Sina App Engine搭建了个简单的脚本,接受外部post参数,使用seamail的quickSend进行邮件发送。

cron任务使用 BAE 的app.conf实现。具体代码:

crond :
  service : on
  crontab :
    - "*/1 * * * * php /home/bae/app/scripts/mail.php"

发送邮件的部分代码:

之前使用过WWW-Authenticate验证的方式做过用户验证的相关功能,但仅限于个人使用后台,简单应用。在一个公司后台项目中,使用了WWW-Authenticate的验证方式,发现在退出的时候遇到些问题。

不能简单的更改 $_SERVER['PHP_AUTH_USER']$_SERVER['PHP_AUTH_PW'] 变量。查了下线上的手册,根据网友的评论,找到了一种解决方案,是借助于 $_COOKIE 来实现的,分享这个class给大家。

今天进行代码review的过程中,看到了这样的一段js:

Goodbye old friend! You will be missed...