调试中除了在URL上加时间戳外,如何避免js、css被返回304状态?_html/css_WEB-ITnose

WBOY
풀어 주다: 2016-06-24 11:48:51
원래의
2041명이 탐색했습니다.

在本地开发环境(nginx)中,经常遇到这样的情况:调试js时浏览器总是不载入已修改的js内容,而直接吐出了上次缓存的代码。

 

我曾经做过以下尝试:

ctrl+F5

ctrl+F5+F5+F5+F5+F5+F5

service nginx restart

service nginx stop ... service nginx start

service php-fpm restart

service php-fpm stop ... service php-fpm start

reboot

在nginx配置里加expires -1;

在nginx配置里加add_header Cache-Control 'no-store';

均告失败。

 

在谷歌浏览器的调试模式下发现所有js文件全部是清一水儿的304 Not Modified。再去搜索引擎里查找解决办法,又清一水儿的答案:在js的url后面加时间戳:

/static/js/common.js -> /static/js/common.js?2015.03.04

但在开发调试中,不能每次调试都要改一下url吧?

 

功夫不负有心人,终于偶然在一家外国网站看到一个网友也遇到了这个问题,并且自问自答:

在nginx配置中增加

if_modified_since off;

add_header Last-Modified "";

 

重启nginx后,大功告成!

ps:如果还不行,记得先随便修改一下js文件的内容,并保存,再刷新即可。

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!