2016年7月

Lumen中路由不支持可选参数

在Lumen所使用的FastRoute中,对可选参数提供了支持。
例如/user/1来查看用户id为1的用户信息,/user来查看自己(已登录)的用户信息。
此时路由/user后面的/1是可以省略的。
用FastRoute写规则就是/user[/{id}]

但是在Lumen中并不支持这种写法。
需要分开写两条路由:
/user/user/{id}

特此记录

php mail debug

在用dokuwiki的时候,他会在注册的时候将密码发送给注册用户的邮箱,但是始终没人收到。
我之前也没有用过php自带的发送邮件功能,所以也不知道怎么debug。
google了一番之后,顺利解决了。(哪里顺利了……)

首先,php的mail函数是只会返回truefalse的。
谷歌之后,了解到mail的日志通常在/var/log/mail*
果然,找到了。

Jul  2 07:31:53 vultr sendmail[21578]: unable to qualify my own domain name (vultr) -- using short name
Jul  2 07:31:53 vultr sendmail[21578]: NOQUEUE: SYSERR(www-data): /etc/mail/submit.cf: line 1: fileclass: cannot open 'ATURE(use_ct_file)###': No such file or directory
Jul  2 07:31:53 vultr sendmail[21578]: NOQUEUE: SYSERR(www-data): No local mailer defined
Jul  2 07:31:53 vultr sendmail[21578]: NOQUEUE: SYSERR(www-data): QueueDirectory (Q) option must be set

复制sendmail.mcsubmit.mcm4 submit.mc > submit.cf就好了