用Nginx反代运行于Apache的Laravel

很早之前,我把自己的vps从apache切换到了nginx,那时候是因为vps性能不好,能省就省。

后来经常遇到php5-fpm挂掉等各种情况导致跑php程序经常会502,于是,从去年开始,我开始将我的php站点逐步切换至apache,并使用nginx进行反代。

这时候,其实很想吐槽php,还得弄个apache来跑….

后来,当开始反代一些laravel写的网站的时候,遇到了一些坑,所以写这篇文章记录下。

Apache配置

假设我们这里用9000端口在apache监听了一个vhost,具体配置就不写了XD

Nginx配置

http的vhost配置:

如果是https反代,我们需要进行额外的配置:

注意新增的几个ssl相关的配置来告诉Laravel是ssl访问哦,同时,我们还要配置下Laravel。

Laravel 配置

以下配置以Laravel5.2为例。

在 app\Providers\RouteServiceProvider.php 中,我们需要修改以下函数:

至此,反代的laravel app中,通过assets(),url()等函数产生的url都会是https.

ss-panel v3

唔,最近这几个月,断断续续花了挺长时间的重构ss-panel v3,主要是中间有段时间加班太多,搞得我每啥时间继续写,于是花了非常多的时间才完成v3.

v2的真的好low,于是就像根据mvc模式重构下v3。

此次重构的feature:

  • MVC模式,实现了php代码和视图的分离
  • Composer进行依赖管理
  • 配置文件分离到.env文件
  • 优雅的连接
  • 安全性提升
  • 多主题支持

嘛,其实主要是这半年来基本都是写golang,php很少写,于是也花时间复习下。然后说下用到的一些轮子吧:

  • Slim3: 路由转发,轻量级的php micro framework
  • Eloquent ORM: Laravel用的model,这么好的轮子当然是直接拿来用啦。
  • smarty: 一个比较经典的php模板吧,其实各种php模板引擎feature都差不多。

其他一些轮子不是重点就不列了。

魔改的shadowsocks-go

然后,就是重构的时候,自己改了个manyuser版本的shadowsocks-go.

为什么不用Python版本改呢,因为我不会蛇语233

要说go版本的feature吧,其实都是然并卵。毕竟ss的瓶颈不会在cpu,虽然golang各种异步爽,然而还不如一个好的线路来得好,不过如果说feature吧,可能就是我改的这个版本,支持自定义加密方式,然后配置文件相比py的manyuser,更加分离些XD

Next Version

然后就是废话一些下个版本的计划,下个版本ss-panel v3.1,以及shadowsocks-go mu的魔改计划。

ss-panel v3.1
  • 将v3的基础框架代码抽离到LightFish framework中
  • 提供一套RESTful的api
  • 进一步提供安全性
  • 一些细小的功能

shadowsocks-go mu

  • 使用web api与ss-panel进行用户数据读取以及流量同步
  • 自身提供api供ss-panel调用
  • 优化下代码

从独立博客到微信公众号

此post缘由2条@wzyboy @yegle的tweets的感慨。

Part 0

此post比较杂,只是想吐槽下。

在Twitter/微博还没火的时候,很多人写blog的频率还是很高的,那时候,Google Reader是很多人的获取信息的重要工具,包括我。

依稀记得我是从09年的暑假开始成为Google Reader的重度用户的,直到GR关闭后,仍然有Feedly替代了GR成为阅读RSS的工具。

然而现在,或许说大概10年左右开始,好多人的blog都开始长草,包括我,一年能发几篇post就不错了吧,就好像我也时隔好几个月再次写了这篇blog。

如果说,Google Reader不关闭,而是开启收费功能,或许将会是我最愿意付费的工具,没有之一,然而它关闭了,连个收费选项都没有。

在几个月前,我开始觉得WordPress太大了,想自己弄个简单的blog系统,然后恢复以前的更新频率,现在看起来似乎有点233。

Part 1

好吧,现在该说到微信公众号了,这或许是腾讯这几年最成功的产品了吧,诞生了许多以微信公众号服务的公司。

作为一个比较依赖国外服务的用户,微信似乎仍然是我的主要移动端IM,大概是大学开始那会儿开始流行微信的吧。

我也不小心订阅了许多公众号服务号什么的,其实我至今分不清。

朋友圈里偶尔也会有人发一些文章的链接,我偶尔也会打开公众号看看。然而,大部分公众号内容都是标题党抄袭什么的,甚至经常有很多知乎的文章被抄袭。不知道在腾讯投资知乎后会不会有点改观。

很喜欢@upsuperx的这推,或许哪天微信公众号会成为一个不错的原创发源地。

但是,获取新闻资讯还是没有RSS来的方便。

为什么写blog的人少了

其实很简单,大概有这几点吧

  • 首先,写blog是给人看的,所以要认真,所以一般写blog都会比较花时间,所以很多人记录一些技术上的坑什么的都是直接扔Evernote了。。
  • 分享什么的,没什么好写的,直接发个tweet就完了。。

好久没有写blog了,我也不知道我这篇blog在说啥了。。。

以后尽量还是写一些blog吧。。

致最后一个寒假

转眼间,到了月底,好像是最后一个寒假了,想想其实还是挺伤感的。好像也好久没有写日志了,也好久木有写年终啥的日志了,所以还是念念旧,怀念下即将逝去的学生时代。

2014总结

设备

去年入了不少设备,首先是2月买Fitbit Flex,智能手环,虽然没有增加运动,但是我本来就是用来测量睡眠的嘛XD。

然后就是6月MacBook Air啦,这个之前blog已经有写啦~确实是个好东西,话说本来是要用来学iOS Dev的说,然后还是写PHP去啦XDD。。

然后是9月份,帮基友(女)弄电脑,她也被我骗去买MacBook Air啦哈哈,然后他的iPad借了我玩几天,然后感觉在pad上用Evernote好棒,于是我先买了个Nexus7 2013,但是好像不是很好用的说。。

然后就是双11入的iPad mini2 32g,果然pad还是水果好,能满足我大部分需求啦,由于那时候太忙,都没写啥日志记录~

然后就是前几个星期,手机(又老又破的4s)坏了,现在还不知道换啥,毕竟穷。。

编程/实习

首先,是在寒假开始学PHP,虽然到现在还是个渣渣(

然后7月底有了个机会去实习了下,就是打酱油啦,那段时间一个人在陌生的福清,一个人真的好心酸,只能偶尔电话基友同学碎碎念下sigh。

开学后,又开始学Java,虽然是酱油。

ShadowX

这个是11月份开始捣鼓的一个东西,那时候出现了个manyuser版本的shadowsocks-py,然后就用php自己写了个简单的前端ss-panel,各种顺其自然有了ShadowX。

14年4月第一次和基友一起去了上海玩,然后是10月又和基友一起再去了一遍,当然是去看演唱会啦~这也算是大学前的愿望之一了。然后后来又去了武汉见到了基友 @fdb713 没上了他有点遗憾XD。

找工作/实习

虽然导出跑面试投简历,几个ok但是大部分都挂了。。。太黑历史就不多写啦。这个人还是木有工作的。

About Blog

实在惭愧,blog更新实在是少,期间其实有点想换ghost什么的,Markdown编辑实在是赞,然后现在我是在WordPress上装了个Markdown的插件在写blog…

今年blog的目标是,争取一个月可以写一篇吧..

然后就是,希望今年可以自己搞个blog程序吧,造个轮子。

etc

唔,好像没啥可以写的啦,不过14年我还是挺ok的啦~希望今年寒假能做些有意义的事情咯~

[OS X]小技巧: SSH连接远程vps长时间不操作不掉线

用*nix的Terminal远程连接VPS的时候,长时间不操作,就会掉,这时候可以已通过修改sshd_config,来使得长时间不操作,也不会掉线。

Linux下,可以通过修改 /etc/ssh/sshd_config 文件,添加

ServerAliveInterval 20
ServerAliveCountMax 1993

而OS X的此文件在 /etc/sshd_config,修改内容同上。

添加的内容意思为,每隔20秒向服务器请求一次心跳,超过1993次没响应就认为掉线。
注:以上修改均在客户端修改,而不是在VPS上修改。

Windows带来的一些奇怪的习惯

最近一个大学女同学也买了个MacBook Air,然后微信上跟我说,各种不会用,是不是只有一个分区啊什么的,然后就想起了之前一个推油的Macbook入手文章人家家人第一次用就觉得好熟悉,然后为啥用过win的人,就会如此的不习惯,然后我就想写下这篇blog吐槽下win用户的几个奇怪的习惯,或者说错觉?

为什么要分区?分那么多区干嘛?

自从我原来的PC本换了个SSD,256G的,我就只给win8弄了一个区,也就是C盘。然后,每次有人看到我只有一个C盘就各种奇怪,问我为啥只有一个盘。
在*nix下,一般都是只有一个区,当然也可以分别给/boot /home分别挂载,这样迁移数据或者换系统的时候资料丢得少,/boot分区单独分也比较安全写,而且/boot分区也挺小的。
分区最初目的应该是为了方便管理文件,但是在C盘下,或者~文件夹下新建目录不也是可以方便管理文件?新建那么多区,会造成每个分区的剩余空间浪费的情况发生,显然,win下分CDEFG太多分区没啥意义,但是win用户就是已经习惯了。

软件不要装C盘?装多了会卡?

这个真的是最让人无语的,为啥软件不能装C盘?Google的大部分win软件都是默认只能装在C盘,问都不问的。
很多人都以为,装C盘会卡,如果C盘剩余容量太小了可能真的会卡,但是为啥不给C盘分个120GB呢,已经好多人问我说,如何给C盘扩容?
其实我也不懂为啥,就算你软件都不装C盘,C盘还是会慢慢地变大,与其纠结说为啥C盘不够,直接给个120GB呗,反正有时候C盘放GVAV还更安全呢。
至于C盘装多了软件会卡,就更搞不懂了,在C盘装了100个软件,但是每个都不会开机启动,D盘装了5个软件,每个都开机启动,哪种情况更卡,废话。
他们一定是吧装C盘和开机启动搞混了?至于为什么很多人会认为装C盘不好,会卡,应该就是对分区的误解造成的,小明买了个笔记本,很开心开始分区了,C盘装个win7被,win8太难用了,D盘放学习资料,给个120G,D盘当然是放最喜欢的DotA英雄联盟啦,还有其他HGame游戏呢,分给120G呗,E盘当然是放我最喜欢的Exo Oppa们的各种视频现场啦,然后F盘在放些其他的东西,于是C盘就只有50G了可能。

于是,软件只能装其他盘咯。当然,这样是不好的,强烈建议,分一个C盘就够了,小明同学最好是只有一个C盘,然后C盘下建立这样几个文件夹:

/学习
/游戏
/EXO
/其他糟糕物
/GV

嗯,这样就算你不好好学习,小明的D盘空间也不会浪费,有一天不喜欢exo了,E盘的东西删了空间也不会浪费了。那天小明变直男了,把gv都删了,某个盘的某个隐藏文件夹的东西删了后这个盘的空间也不会浪费了。

More
最后,我想吐槽下最近朋友圈的一个转发,说是有人淘宝被骗,因为点击了一个类似这样的地址:
http://taobao.com.shanggoule.com/xxxx/xxx/xxx.html
然后输入淘宝账号去退款,嗯,我只想说,如果这么low的钓鱼都不懂,不适合网购。
最近QQ淘宝都有了二维码登录的选项,我觉得挺好的,拿起手机扫一扫,比输入密码安全多了。

入手MacBook Air

[email protected],然后就有点想买个Mac,刚好这个2个月有了些收入,于是决定买个MacBook Air。
由于比较穷,买不起MacBook Pro with Retina Display,还是买个Air吧,前几天去了下电子城,看了下Pro和Air,感觉Air真的好薄,然后由于我们猫科动物眼睛不是很好,没觉得Retina屏幕有想象的那么棒,然后好像也比较喜欢Air,于是就决定买Air吧。
问了几个大大,都说8GiB的Ram很有必要,而且之前的笔记本也是8GiB,所以还是买定制的Air。
Continue Reading…

在Windows上使用Git

首先,下载Git for Windows. 然后安装基本就是一步一步点击Next.
设置
然后,打开Git Bash分别设置Username和email

git config –global user.name “Your Name Here”

git config –global user.email “[email protected]

Continue Reading…