唯品秀前端博客

个人站长一般都会对网站优化有所了解,毕竟涉及到用户体验以及SEO等问题,很多人喜欢借助工具来获取自己网站评分,如果你也是,那么你可能听说过gtmetrix,网站本身是英文的,可以在通过谷歌浏览器直接翻译下,更直观。下面主要罗列一些可能不好理解或大多网站存在的问题选项

GTmetrix是什么?

GTmetrix可让您深入了解网站的加载情况,并就如何优化网站提供可操作的建议一款网站加速监测工具。GTmetrix会告诉您很多关于您网站性能的信息。我们的报告为您提供有关网站加载方式的完整信息,并帮助您检测瓶颈所在。

准备工作,采坑史

  • 腾讯云服务器配置121 + 腾讯CDN服务,web服务其实一开始我是用的Apache,但因为Nginx大家都说好,虽然想着本着优化的角度,那自然不能放过,于是切换到Nginx,切换后又将Apache的很多配置转化成Ningx的
  • 在腾讯CDN下有资源压缩功能,可惜,无法支持首页,因为首页是PHP的
  • CDN下的配置会覆盖自己在Nginx的配置
  • 重新配置网站伪静态规则
  • 更多细节问题...

优化前测评

避免在meta标签中使用字符集

在Internet Explorer8浏览器,在meta http-equiv标签指定字符集将不能超前下载,不能先行下载会大大增加加载页面的时间。如下设置了字符集

1
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">

优化策略:只需要把主题中头部meta标签中http-equiv="Content-Type"都去掉即可

利用浏览器缓存

优化策略:通过nginx做缓存设置,代码如下:

1
2
3
4
5
6
7
#开启头部缓存
location ~ .*\.(css|js|swf|php|htm|html|jpg|png|svg|ico|gif|woff2)?$
{
    expires  30d; //设置30天
    error_log off;
    access_log off;
}

最小化重定向

优化策略:其实这个问题是有链接是/或者#等等形式,这样写的话,那么点击后网站会发生重定向,只需要改成具体链接全称就好,例如很多网站logo区a标签跳转写的是"/",那么我们应该写自己的完整域名地址。

启用压缩

优化策略:依然需要在nginx中配置,代码如下:

1
2
3
4
5
6
7
gzip on;
gzip_vary on;
gzip_proxied any;
gzip_comp_level 6;
gzip_buffers 16 8k;
gzip_http_version 1.1;
gzip_types image/svg+xml charset=UTF-8 text/plain text/xml text/css text/javascript application/xml application/xhtml+xml application/rss+xml application/javascript application/x-javascript application/x-font-ttf application/vnd.ms-fontobject font/opentype font/ttf font/eot font/otf;

通过一致的URL提供资源

这个问题分为两种,第一种例如同一个图片,但你请求时候加上了不同的参数?xxx;第二种情况是域名重定向没做好,例如访问不带www时候(weipxiu.com)去请求网站,网站会请求后再跳转到带www的(www.weipxiu.com),这时候会部分资源请求了2次

优化策略:第一个问题很明确,自己根据你的网站资源去弄,重点第二种问题,这个问题一般是你重定向配置的方式不是301,而是配成了302跳转,具体百度两种区别。

优化后测评

附本站Nginx完整配置

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
server {
    listen 80;
    server_name weipxiu.com;
    rewrite ^(.*)$ https://www.${server_name}$1 permanent;
}
server {
    listen 443;
    server_name weipxiu.com;
    rewrite ^(.*)$ https://www.${server_name}$1 permanent;
}
server {
    listen 443 ssl default_server;
    server_name www.weipxiu.com;
      index index.php index.html;
    root /www/wwwroot;
   
    #SSL-START SSL相关配置,请勿删除或修改下一行带注释的404规则
    #error_page 404/404.html;
    ssl_certificate    /www/server/panel/vhost/cert/www.weipxiu.com/fullchain.pem;
    ssl_certificate_key    /www/server/panel/vhost/cert/www.weipxiu.com/privkey.pem;
    ssl_protocols TLSv1.1 TLSv1.2;
    ssl_ciphers EECDH+CHACHA20:EECDH+CHACHA20-draft:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5;
    ssl_prefer_server_ciphers on;
    ssl_session_cache shared:SSL:10m;
    ssl_session_timeout 10m;
    add_header Strict-Transport-Security "max-age=31536000";
    error_page 497  https://$host$request_uri;
    #SSL-END
   
    #ERROR-PAGE-START  错误页配置,可以注释、删除或修改
    error_page 404 /404.html;
    error_page 502 /502.html;
    #ERROR-PAGE-END
   
    #PHP-INFO-START  PHP引用配置,可以注释或修改
    include enable-php-74.conf;
    #PHP-INFO-END
   
    #禁止访问的文件或目录
    location ~ ^/(\.user.ini|\.htaccess|\.git|\.svn|\.project|LICENSE|README.md)
    {
        return 404;
    }
   
    #一键申请SSL证书验证目录相关设置
    location ~ \.well-known{
        allow all;
    }
   
    #开启头部缓存
    location ~ .*\.(css|js|swf|php|htm|html|jpg|png|svg|ico|gif|woff2)?$
    {
        expires  30d;
        error_log off;
        access_log off;
    }
   
    #REWRITE-START URL重写规则引用,修改后将导致面板设置的伪静态规则失效
    # include /www/server/panel/vhost/rewrite/www.weipxiu.com.conf;
    if (-f $request_filename/index.html){
           rewrite (.*) $1/index.html break;
    }
    if (-f $request_filename/index.php){
           rewrite (.*) $1/index.php;
     }
    if (!-f $request_filename){
           rewrite (.*) /index.php;
    }
    rewrite /wp-admin$ $scheme://$host$uri/ permanent;
    #REWRITE-END
   
    gzip on;
    gzip_vary on;
    gzip_proxied any;
    gzip_comp_level 6;
    gzip_buffers 16 8k;
    gzip_http_version 1.1;
    gzip_types image/svg+xml charset=UTF-8 text/plain text/xml text/css text/javascript application/xml application/xhtml+xml application/rss+xml application/javascript application/x-javascript application/x-font-ttf application/vnd.ms-fontobject font/opentype font/ttf font/eot font/otf;
   
    access_log  /www/wwwlogs/www.weipxiu.com.log;
    error_log  /www/wwwlogs/www.weipxiu.com.error.log;
}
server
  {
    listen 888;
    server_name www.bt.cn;
    index index.html index.htm index.php;
    root  /www/server/phpmyadmin;
    location ~ /tmp/ {
        return 403;
    }

    location ~ /\.
    {
        deny all;
    }

    access_log  /www/wwwlogs/access.log;
  }

小结

“高分”不代表高分,不代表你网站就变得更快,RMB玩家提升服务器、增加CDN、OSS、COS等等才是王道。请大家不要执着于这个优化。切记切记!很显然,最终我网站已经恢复原貌,并没有完全按那些条条框框去优化做。

本站所有文章、图片、资源等如无特殊说明或标注,均为来自互联网或者站长原创,版权归原作者所有;仅作为个人学习、研究以及欣赏!如若本站内容侵犯了原著者的合法权益,可联系我们进行处理,邮箱:343049466@qq.com
赞(0) 打赏

上一篇:

下一篇:

相关推荐

0 条评论关于"网站优化加速诊断工具GTmetrix|如何利用它优化你的网站"

表情

最新评论

    暂无留言哦~~
谢谢你请我吃鸡腿*^_^*

支付宝扫一扫打赏

微信扫一扫打赏