很早之前,我把自己的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.