遇到一个奇怪的问题,上传图片到应用目录下,然后马上返回路径给前端并加装图片,结果出404错误。但是此时后台显示文件已经存在了,并且单独访问该文件也是可以的。这种现象在本机测试没有出现过,但在服务器上就出现。甚至我把前端的图片加载设置延迟1-2秒也不行。有没有大神能解一下,这是什么原因啊?类似问题:http://bbs.csdn.net/topics/390959588

解决方案 »

  1.   

    访问上传后的图片用的是 tomcat 吗?清理 tomcat 的静态文件缓存 server.xml:
    <Context className="org.apache.catalina.core.StandardContext"
                     cachingAllowed="false"
                     charsetMapperClass="org.apache.catalina.util.CharsetMapper"
                     cookies="true" 
                     reloadable="false" 
                     wrapperClass="org.apache.catalina.core.StandardWrapper">
            </Context>
    静态文件不建议使用 tomcat 解析,性能太差。建议用 nginx 反向代理:
    # 静态请求本地处理
    location / {
    root         D:/work/bdp/frontend; # 存放静态文件的目录
    index         index.html;
    }
    我们就是这么做的,现在就跑在生产上,没有楼主所说的延时 404 问题。
      

  2.   

    哪个启动不了?tomcat 还是 nginx?
    tomcat 的话是在 host 标签里边。