你还在一条条命令复制粘贴搭建 SVN 服务器?快别麻烦了,一个 docker 镜像就都帮你搞定了。如果你的服务器安装了 docker,直接使用以下命令(要修改你自己的账户和密码信息哦)拉取一个已经配置好的 VPN 镜像就可以直接使用了,不用那么那麻烦的自己又改配置文件又要安装软件。

docker run \
    --name ipsec-vpn-server \
    --restart=always \
    -e VPN_IPSEC_PSK=你的PSK密码 \
    -e VPN_USER=你的VPN用户名 \
    -e VPN_PASSWORD=你的VPN密码 \
    -p 500:500/udp \
    -p 4500:4500/udp \
    -v /lib/modules:/lib/modules:ro \
    -d --privileged \
    hwdsl2/ipsec-vpn-server

macOS 启动项大家众所周知的是 系统偏好设置->用户与群组->登录项 里面的设置,但有时候我通过这里无法找到系统自动启动的应用程序,比如 Microsoft Office AutoUpdate 组件,它会在系统启动时自动加载,但登录项里面却看不见。所以网络上搜索一下,摘录了部分重要的内容,原文在此:
https://www.jianshu.com/p/49dabd8ec9bb

继续阅读

本文介绍了 LNMP 环境搭建的 wecenter 如何开启伪静态的方法,从后台开启到配置 nginx 的配置文件,本文都有详细介绍。

开启后台伪静态功能

登录到后台开启伪静态功能,在全局设置-站点功能中。如果你之前开启过伪静态功能,但是没有配置伪静态规则,那么此时可能无法访问后台,显示 404。那么你可以直接跳过这一步,因为你已经开启了伪静态功能,直接去修改一下 nginx 的配置文件就可以了。

修改 nginx 的配置文件

LNMP 环境为我们自动创建好了站点的配置文件,我是通过 lnmp vhost add 脚本来添加的站点,生成的配置文件在 /usr/local/nginx/conf/vhost/站点名称.conf,如果你在使用 lnmp vhost add 命令创建站点时就已经启用了伪静态规则,那么 lnmp 会让你指定一个伪静态的规则文件。如这里所示:https://lnmp.org/faq/lnmp-vhost-add-howto.html,我创建站点的时候选择的是 other 这个规则。你也可以通过查看 /usr/local/nginx/conf/vhost/站点名称.conf 中的配置判断当前使用了哪个规则,如下图:

我们使用的是 other 规则,但实际这个规则什么内容都没有,规则的文件在 /usr/local/nginx/conf 目录。用 vim 打开 /usr/local/nginx/conf/other.conf 文件,写入如下内容然后保存:

location / {
        if (!-e $request_filename)
        {
                rewrite (.*) /index.php;
        }
}

保存成功后,我们就成功配置完成 nginx 的伪静态规则了。此时执行命令 /etc/init.d/nginx restart 来重启 nginx 让规则生效。

如果你在使用 lnmp 创建站点的时候没有选择开启伪静态,那么你可以根据这篇文章手动进行添加:https://lnmp.org/faq/lnmp-vhost-add-howto.html(建议学习一下 vim 的基本用法,让自己可以更自由的在 linux 中翻滚)

最近接了一个需求,主要是对 FTP 操作的一系列功能,中间遇到一个问题就是如何通过命令行方式从 FTP 下载一个文件夹到本地。搜索了一下 FTP 现有的命令,无法实现将一个目录下所有子目录的文件都复制下来,mget 命令仅能下载文件,而不能下载目录。搜索后得知,可以通过 wget 命令来解决。一个示例如下:

继续阅读

最近我身边有一种言论一直不绝于耳,那就是 UNIX/Linux 使用者对 Windows 的各种偏见,先不说对错,我也并不是想拥护 Windows(我个人 UNIX/Linux、Windows 都有用),只是感觉可拥护赞赏自己所在领域的操作系统,更应该学习和借鉴并推崇其他领域中比你做的好的地方,这样才能互相进步和发展。否则客观的就能看出一个人对事的偏见态度和不完整的人格。比如有的人说:“你看看硅谷,哪有程序员用 Windows 笔记本的?全部是 Mac…” 等。这话我不止在一个地方听到过。

继续阅读

你有没有发现?Mac OS X 在安装好以后,Home 目录下的几个文件夹使用 Finder 去看都是中文,在终端下,则都显示的是英文。而如果我们自己新建一个英文的文件夹,在 Finder 里面也是英文,如何根据我们的需要,也让其在终端下显示为英文而 Finder 中显示中文呢?

继续阅读

在修改 Mac OS X EI Capitan 系统的某些系统文件的过程中,你可能会遇到即使你加了 sudo 以管理员身份去操作页会被拒绝,开始我对这个问题很是纳闷,随后在网络上搜索了一下,发现是一个名为 SIP(System Integrity Protection)的功能在保护系统文件,如果你迫不得已真的要修改某些系统文件的时候,可以临时关闭它。关闭它的方法很简单。

继续阅读

从我用 Mac OS X 开始,就已经是 EI Capitan 了,并没有用过以前老版本的 Mac OS X 系统,最近想修改一下截图时保存的文件名,默认为 屏幕快照 2016-01-01 17.24.08.png 形式的,我想修改为 2016-01-01_17.24.08.png 这种形式,去掉前面的中文,然后把中文与日期中间的空格去掉,并且日期和时间中间的空格也替换为下划线。因为我经常需要将图片上传到博客,如果出现中或者空格,就会有转义字符,这样会导致图片的 URL 非常的长。

继续阅读

微信开发团队已经提供“微信开发者工具”,本文内容已经落后,请开发者选择“微信开发者工具”。

你是否遇到过这样的问题?在微信公共号开发过程中,有一些诸如获取用户身份等信息的代码必须要再微信客户端打开连接测试,而且微信后台获取用户信息时必须设置一个安全域名,这个域名指定到一个我们暴露在外网的服务器上才可以正常使用。而我们编写代码的环境往往是本机,很少有直接连接服务器用 vi 编写代码的场景,一般情况都是本地修改好代码,把代码通过 FileZilla 等类似的工具把代码传到服务器上,或者把代码提交到 github 上,再到服务器把最新的代码 pull 下来测试。对熟悉微信公共号开发的人来说也许还好,但是对于一个刚刚接触微信公共号开发的人可能这个测试的过程要来回重复十几次才能把代码跑通,而这只是其中一个获取用户身份的功能,调用 JS SDK 等等都需要在服务器环境测试,这个过程是很折磨人的。

类似上面的问题,我想了很多办法,比如用 atom remote sync 插件、自动同步代码到服务器等等思路,最终还是有各种小问题折磨着我。如果能实现手机微信公共号跳转的页面直接访问的是我们编程环境的电脑,代码修改后只需要等待服务端重新编译,手机端就可以直接测试效果,这样岂不是方便很多?继续阅读