美文网首页
上生产后,页面图片第一次加载不出来,刷新后才出来

上生产后,页面图片第一次加载不出来,刷新后才出来

作者: 浅浅_2d5a | 来源:发表于2022-11-17 14:35 被阅读0次

    情况:第一次图片加载不出来,需要多刷新两次。
    思路:图片是资源,会通过ajax进行请求,清掉缓存,查看该图片加载情况。(直接打开生产环境网址)
    情况:

    image.png
    图片第一次不能加载成功,是本质原因。所以图片没出来,显示了alt。
    要研究为什么第一次加载不出来。
    image.png
    这是这张图片的请求 状态206。
    深挖一下:
    image.png
    也就是:图片请求成功,但是服务器没全给你。就吊着你。
    思考:服务器,它这是有意见啊,哪里没满足它啊!
    思考:服务器,限流了?
    难解决,找百度。
    https://www.jb51.net/article/191418.htm
    文章核心如下:
    直接在后台服务器上用后台服务器的IP地址去访问,发现速度相当快,于是怀疑是Nginx的配置问题。
    Nginx中配置
    其中几个重要的参数如下所示。

    proxy_connect_timeout 600; #nginx跟后端服务器连接超时时间(代理连接超时)
    proxy_read_timeout 600; #连接成功后,后端服务器响应时间(代理接收超时)
    proxy_send_timeout 600; #后端服务器数据回传时间(代理发送超时)
    proxy_buffer_size 32k; #设置代理服务器(nginx)保存用户头信息的缓冲区大小
    proxy_buffers 4 32k; #proxy_buffers缓冲区,网页平均在32k以下的话,这样设置
    proxy_busy_buffers_size 64k; #高负荷下缓冲大小(proxy_buffers*2)
    proxy_temp_file_write_size 16k; #设定缓存文件夹大小,大于这个值,将从upstream服务器传

    而他服务器上的图片基本都在100K~5M之间。

    问题就出在proxy_temp_file_write_size上,当服务器上的文件超过该参数设置的大小时,Nginx会先将文件写入临时目录(缺省为Nginx安装目下/proxy_temp目录),缺省Nginx是以nobody身份启动的,用ls -al 命令查看proxy_temp目录 nobody是proxy_temp目录的所有者,怪了那为什么没权限呢?接下来查看proxy_temp的父目录既Nginx安装目录。发现nobody竞然没权限,怪不得会出现上面的问题。

    我们工程连这一行都没设置。后增加了这一行并proxy_temp_file_write_size 5m;
    图片第一次请求就可以下载下来。

    ================思考部分=================
    img 上src属性赋值问题,什么时候要用require,什么时候不用
    <img src="../img/a.png">
    写死src引入本地路径,就可以加载图片
    <img :src="res.img">
    res.img 是https的网址,这样写也可以
    <img :src="相对路径">
    又是动态的src,又是相对路径,就需要require('')去加载图片了

    相关文章

      网友评论

          本文标题:上生产后,页面图片第一次加载不出来,刷新后才出来

          本文链接:https://www.haomeiwen.com/subject/hrsyxdtx.html