PHP/Laravel中的“异常链” 之前知道,Python 3 中终于实现了对异常链的支持。 最近,在代码中,有一处写着: try { // some code} catch (\Exception $e) { \Log::error(‘xxx_id’ . $xxx->id);} 问了之后才发现,这是需要知道是哪个id触发的错误,如果不捕获异常的话,在backtrace信息中可能不会出现此id。 但是,这样做虽然可 2015-12-12 Language > PHP #PHP
Let’s Encrypt/HTTPS配置记录 前几天收到Let’s Encrypt public beta的邮件,所以就尝试了下ssl+https+http/2。 Let’s Encrypt 配置首先,我之前遇到过Error creating new authz 的错误,就一直没有尝试,后来发现v2ex上有人通过设置NS记录解决了问题(虽然文中说要设置MX记录,但是我只更换了NS记录到CloudFlare),生效时间可能是24h。 不过由于c 2015-11-15 Ops
SSH 重用连接 有的时候需要经常 ssh 连接到服务器上,比如,我push一个分支,然后合并并push,然后push tag,然后删除该分支。期间至少需要四次SSH连接(不要问我为什么会有这么复杂的流程。。。) 另外,之前通过跳板机直连线上机器的方法,在差的网络环境中仍然很慢,也在考虑如何加速的问题。 综上,每次SSH连接的建立,需要首先建立TCP连接,然后认证之。有的时候网络慢,搞得这个过程很不爽,故有此文。 2015-10-17 Ops
git lg 和 git tg 不好意思,在下又要开始聒噪几句了。 git lg —— 更人性化地展示git历史首先,git log默认太挫了,仅仅是罗列一个个commit,我们可以对其进行定制。 我觉得git log的--graph –oneline –decorate 就工作得不错,就把git log –graph –oneline –decorate 设置为别名lg: git config --global alias.l 2015-09-10 Tips
如何直接通过跳板机ssh到服务器 公司线上服务器都无法直接访问,必须通过一台跳板机来访问。比如要访问机器dev,则必须先ssh到跳板机gateway,然后再ssh到dev机器。 这样做自然可以减少攻击面,但是每次去dev机器执行命令,或者上传文件的时候,都要两次ssh,确实比较麻烦。 故Google之,可以使用ssh config中的ProxyCommand选项,比如我们先定义主机gateway的连接参数: 123Host gat 2015-09-08 Ops
Mac Terminal ssh后中文乱码的问题(git&vim) 安装的是英文的 OS X ,SSH到别的机器上的时候,发现 git log 和 vim都乱码了: 之前在 Ubuntu 上也遇到过类似的问题,知道是 $LANG 或者 $LC_* 系列变量设置错误。果然,LC_CTYPE 是 UTF-8 ,而不是预料的 en_US.UTF-8 。 Google了半天,都是各种不设置LC_CTYPE、关闭SendEnv选项等。 后来偶然发现自己在 English 2015-09-08 Tips
如何设置 nginx 和 php-fpm 的 Max open files 数量 刚开始也和同事一样,以为 Max open files 由 /etc/security/limits.conf 控制。 不过,同事顺便在 /etc/pam.d/su 文件中添加了session required pam_limits.so ,为了探究为什么要添加这一条规则的时候,发现此设置只有在使用 su 命令切换用户的时候有效,使用 sudo 切换用户就无效了,更不用说像 nginx 这种使用 2015-09-08 Ops
如何使用curl下载 Oracle 的 JDK ? 本来我们可以去 Oracle 官网,点击 Accept License 来下载 JDK 的,但是由于网速关系,这种方式很慢,也没有用到多线程下载技术,所以原来一直想用 curl 或者 aria2c 来下载。 但是,如果直接curl地址的话,会遇到错误: 偶然翻 AUR 中 JDK 的 PKGBUILD,发现还有一个 oraclelicense=a 的 Cookie,于是尝试之: 好像成功了? 2015-09-05 Tips
在 CentOS 7 上部署 L2TP/IPSec VPN 服务 首先安装strongswan和xl2tpd: 1yum install strongswan xl2tpd 记得开启IP转发,修改 /etc/sysctl.conf 修改如下: 123456net.ipv4.conf.all.rp_filter = 0net.ipv4.conf.default.rp_filter = 0net.ipv4.conf.all.send_redirects = 0ne 2015-03-06 Ops
Python3.4+uWSGI for Django Website in VirtualEnv (CentOS) Install Python 3.xIn CentOS, There is no Python3 rpm package in EPEL, RPMFusion, we must install Python 3.x by source. Download Python 3.4.0, and extract it. wget https://www.python.org/ftp/python/3.4 2014-03-29 Language > Python #Python #django #uWSGI