优化 Laravel 网站打开速度

1. 关闭 debug
打开.env 文件,把 debug 设置为 false.

APP_ENV=local
APP_DEBUG=false
APP_KEY=base64:6ouIfKdFXfaIGZrH9qBCKAWupg4kVwuRsRGpeQnCRh4=
2. 缓存路由和配置
php artisan route:cache

php artisan config:cache
3.composer 优化
sudo composer dump-autoload –optimize
4.Laravel 优化命令
php artisan optimize
5. 使用 Laravel 缓存
使用 Laravel 的 Cache 方法缓存内容,有文件缓存,数据库缓存,redis 缓存。

$lists = Cache::remember(‘travel.destination.lists’, 20, function () {
return $this->destination->getList();
});
6. 使用 CDN
如七牛、网易、百度、阿里等 CDN,不过收费。

7. 使用 PHP7 并开启 OPcache
apt-get install php70-php-opcache.x86_64
然后使用 service php70-php-fpm restart 命令重启 php-fpm。

注:不同的系统和环境根据自己的情况安装和开启 opache

新建一个 php 文件,用 phpinfo () 函数显示 php.ini 信息,如果可以找到 OPcache 项,说明成功启用了。

8.nginx 开启 gzip 压缩
在服务器 Nginx 开启 gzip 压缩是优化网站性能的方法之一,可以有效减少服务器带宽的消耗,缺点是会增大 CPU 的占用率,但是很多时候 CPU 往往是空闲最多的。

在 Nginx 开启 gzip 压缩

打开 nginx.conf 文件,添加如下:

gzip on;
gzip_min_length 1k;
gzip_buffers 16 64k;
gzip_http_version 1.1;
gzip_comp_level 9;
gzip_types text/plain application/x-javascript application/javascript text/css application/xml text/javascript application/x-httpd-php image/jpeg image/gif image/png font/ttf font/otf image/svg+xml;
gzip_vary on;
gzip 参数的一些介绍

GZIP ON|OFF
开启或者关闭 gzip 模块

GZIP_MIN_LENGTH 1000
设置允许压缩的页面最小字节数,页面字节数从 header 头中的 Content-Length 中进行获取。默认值是 0,不管页面多大都压缩。建议设置成大于 1k 的字节数,小于 1k 可能会越压越大。 即: gzip_min_length 1024

GZIP_PROXIED EXPIRED NO-CACHE NO-STORE PRIVATE AUTH;
Nginx 作为反向代理的时候启用,开启或者关闭后端服务器返回的结果,匹配的前提是后端服务器必须要返回包含”Via” 的 header 头。

GZIP_TYPES TEXT/PLAIN APPLICATION/XML;
匹配 MIME 类型进行压缩,(无论是否指定)”text/html” 类型总是会被压缩的。

通过浏览器判断是否开启 gzip 压缩
如 firefox,打开一个网页,打开 debug 控制栏,如图:

Content-Encoding 字段是 gzip,表示该网页是经过 gzip 压缩的。

博客文章地址:https://aimpeter.xyz/laravel

本作品采用《CC 协议》,转载必须注明作者和本文链接

————————————————
原文作者:Jimmy9876
转自链接:https://learnku.com/articles/5088/optimize-laravel-site-to-open-speed
版权声明:著作权归作者所有。商业转载请联系作者获得授权,非商业转载请保留以上作者信息和原文链接。