Vorwort
gzip (gnu-zip) ist eine Komprimierungstechnologie. Nach der GZIP-Komprimierung kann die Seitengröße auf 30 % oder sogar kleiner als die Originalgröße reduziert werden. Auf diese Weise können Benutzer die Seite viel schneller durchsuchen. Die mit gzip komprimierte Seite muss sowohl vom Browser als auch vom Server unterstützt werden. Es handelt sich tatsächlich um eine serverseitige Komprimierung. Nach der Übertragung an den Browser wird sie vom Browser dekomprimiert und analysiert. Um den Browser müssen wir uns keine Sorgen machen, da die meisten aktuellen Browser das Parsen von GZIP-Seiten unterstützen.
Ob Front-End oder Back-End, Nginx wird häufig bei der Bereitstellung von Projekten verwendet, und kleine Projekte verwenden häufig Reverse-Proxy oder ähnliches. Heute werde ich einfach und direkt über einen der Punkte sprechen – gzip. Wenn es Fehler gibt, korrigieren Sie mich bitte.
Ubuntu, Centos, Linux usw. werden häufig auf der Serverseite verwendet. Wenn Sie keinen Server haben, können Sie es lokal spielen.
Mac-Installation
Sie können es direkt mit brew unter Mac installieren zuerst
/usr/bin/ruby -e "$(curl -fssl https://raw.githubusercontent.com/homebrew/install/master/install)" brew install nginx
Standardkonfiguration
Nachdem die Installation abgeschlossen ist, werden Sie sehen, dass die Befehlszeile die folgenden Informationen enthält. Sie können den Pfad zu nginx.conf sehen, der genau die Konfigurationsdatei ist, nach der wir suchen. Es enthält auch Portinformationen. Wenn Sie Nginx starten, können Sie direkt auf http://localhost:8080 zugreifen. Wenn Sie die in der Abbildung unten gezeigte Seite sehen, ist die Installation erfolgreich.
docroot: /usr/local/var/www default config: /usr/local/etc/nginx/nginx.conf port:8080
Mehrere gängige Befehle
nginx
nginx
重新热启动:nginx -s reload
关闭:nginx -s stop
测试语法:nginx -t
gizp配置:
gzip 相关配置可放在 http{}
或 server{}
或 location{}
层级,若不同层级有重复设置优先级为 location{} > server{} > http{}
1、开启 gzip压缩
gzip on;
2、gzip http 版本
gzip_http_version 1.0;
3、禁止ie6进行gzip压缩(当然现在已经基本没有人使用ie6了)
gzip_disable "msie [1-6]";
4、压缩级别(1~9,一般为平衡文件大小和cpu使用,5是常用值,当然跟实际机器的情况有关)
gzip_comp_level 5;
5、最小压缩临界值(默认的是20字节)
gzip_min_length 20;
6、压缩通过代理链接的客户端数据
gzip_proxied any;
7、采用http协议版本 默认是1.1 ,对于1.0的请求不会压缩,如果设置成1.0,表示http1.0以上 的版本都会压缩。(如果使用了proxy_pass 进行反向代理,那么nginx和后端的 upstream server之间默认是用 http/1.0协议通信的。)
gzip_http_version 1.0;
8、代理缓存压缩和原始版本资源,避免客户端因accept-encoding不支持gzip而发生错误的现象(现在一般都采用gzip)
gzip_vary on;
9、压缩文件类型(默认总是压缩 text/html类型,其中特别说明的是application/javascript和text/javascript最好都加上,若页面script标签的type不同则有可能发生部分js文件不会压缩,默认type为application/javascript)
gzip_types application/atom+xml application/javascript application/json application/rss+xml application/vnd.ms-fontobject application/x-font-ttf application/x-web-app-manifest+json application/xhtml+xml application/xml font/opentype image/svg+xml image/x-icon text/css text/plain text/javascript text/x-component;
10、如果有已经压缩的(.gz)或者提供静态文件服务,可以设置为on。如果不是这样,最好设置为off,因为这会造成额外的i/o开销。一个比较好的处理方式是放在location{}
或server{}
Hot neu starten: nginx -s reload
#🎜 🎜 #
Schließen: nginx -s stop
nginx - t
#🎜🎜##🎜🎜##🎜🎜#gizp-Konfiguration: #🎜🎜##🎜🎜##🎜🎜##🎜🎜#gzip-bezogene Konfiguration kann platziert werden Wenn es auf der Ebene http{}
oder server{}
oder location{}
wiederholte Einstellungen auf verschiedenen Ebenen gibt, ist die Priorität location{} > server{} > http{}
#🎜🎜##🎜🎜#1 #🎜🎜## 🎜🎜#gzip_static on;
gzip_buffers 16 8k;
location{}
oder server{}
zu behandeln. #🎜🎜##🎜🎜#rrreee#🎜🎜# 11. Der für die Speicherung des Komprimierungsergebnisdatenstroms verwendete Speicherplatz wird unten in 8-KB-Einheiten ausgedrückt, und der Speicher wird für das 16-fache der ursprünglichen Datengröße in 8-KB-Einheiten verwendet. Der Standardwert besteht darin, für die Speicherung des gzip-Komprimierungsergebnisses denselben Speicherplatz wie die Originaldaten zu verwenden. #🎜🎜##🎜🎜#rrreeeDas obige ist der detaillierte Inhalt vonNginx grundlegende Einführung in die gzip-Konfigurationsmethode. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!