通过nginx的方式,解决web访问慢的问题

发布时间:2021-05-7编辑:RainNight阅读(356)

    通过nginx的方式,解决web访问慢的问题


    博客上线后发现图片、静态文件增多后,访问起来速度越来越慢,所以把不经常更新的文件,比如css、js和图片等。减少HTTP请求是优化网站的最佳方案之一,我们可以利用Nginx缓存静态文件。

    在Nginx中可以使用proxy_cache将用户的请求缓存到本地一个目录,当下一个请求时可以直接调取缓存文件,就不用去请求服务器了。

    • 打开nginx.conf配置文件,在http层级加入以下代码

      proxy_connect_timeout 10;
      proxy_read_timeout 180;
      proxy_send_timeout 5;
      proxy_buffer_size 16k;
      proxy_buffers 4 64k;
      proxy_busy_buffers_size 256k;
      proxy_temp_file_write_size 256k;
      proxy_temp_path /tmp/temp_dir; # 设置临时目录
      proxy_cache_path /home/cache levels=1:2 keys_zone=cache_one:100m inactive=1d max_size=10g; # 设置缓存目录为二级目录共享内存区大小非活动时间最大容量临时目录要跟缓存目录在同一个分区
      
    • 在server层级加入以下代码

      #要缓存文件的后缀可以在以下设置
      location ~ .*\.(gif|jpg|png|css|js)(.*) {
      proxy_pass http://127.0.0.1:9090 ; # 不进行缓存直接转到后端服务器
      proxy_redirect off;
      proxy_set_header Host $host;
      proxy_cache cache_one; # 设置缓存共享内存
      proxy_cache_valid 200 302 24h; # 设置http状态码为200,302缓存时间24h为24小时
      proxy_cache_valid 301 30d;
      proxy_cache_valid any 5m;
      expires 90d; # 设置失期时间90d为90天
      }
      

关键字其他

Collect from 雨夜的博客 雨夜的博客