浏览器因编码引起的缓存问题

测试 mysql_query  与 mysql_unbuffered_query的时间差问题的时候,做了一个简单的PHP连接mysql数据库的测试代码,文件编码是utf8,在chrome浏览器中,当把chrome浏览器的编码更改为utf8的情况下,刷新页面,获取的时间戳是不会改变的,在nginx服务器和代码之间找了很久也没发现问题,换成IE浏览器结果是好的。当使用chrome浏览器的编码浏览器默认打开的编码(页面的中文是乱码),则时间戳是会改变的。在PHP代码页面加上页面的编码,问题迎刃而解

php页面为utf编码
header("Content-type: text/html; charset=utf-8");

php页面为gbk编码
header("Content-type: text/html; charset=gb2312");

浏览器因编码引起的缓存问题

时间: 2024-10-29 19:10:38

浏览器因编码引起的缓存问题的相关文章

你不知道的 页面编码,浏览器选择编码,get,post各种乱码由来

asp.net页面编码和浏览器的选择编码 每个asp.net的写手都知道,在新版本的visual studio,在没有任何设置的情况下,新建页面时的默认编码位utf-8 我们可以从两个地方可以看出: 第一:打开aspx页面,“文件”->“高级保存选项”,如下图,可以看出编码为:Unicode(UTF-8带签名) 第二:找到aspx存放路径,用系统自带的文本编辑器打开,然后“文件”->"另存为",如下图,可以看出编码为UTF-8 很多时候我们有很多疑问,我们经常在aspx页面

浏览器以及对应的客户端缓存

通过这张图,我们晓得缓存分为以下几部分,客户端缓存,CDN缓存,反向代理缓存以及对应的本地缓存,分布式缓存等 前面我有介绍过 CND缓存 和 反向代理缓存,今天我们主要介绍一下浏览器缓存以及对应的本地缓存 1:客户端缓存一般指的是浏览器缓存,目的就是加速各种静态资源的访问,想想现在的大型网站,随便一个页面都是一两百个请求,每天 pv 都是亿级别,如果没有缓存,用户体验会急剧下降.同时服务器压力和网络带宽都面临严重的考验. 2:客户端缓存主要是HTTP协议定义的缓存机制(如 Expires, Ca

Request 接收参数乱码原理解析二:浏览器端编码原理

上一篇<Request 接收参数乱码原理解析一:服务器端解码原理>,分析了服务器端解码的过程,那么浏览器是根据什么编码的呢? 1. 浏览器解码 浏览器根据服务器页面响应Header中的“Content-Type: text/html; charset=gb2312”解码.修改web.config中“responseEncoding=utf-8”,发现服务器页面响应Header变成了“Content-Type: text/html; charset=utf8”. <system.web&g

JavaEE细节问题03——关于服务器和浏览器的编码解码

Request--对于接受请求: 获取请求中的编码解码问题 : 对于post请求,浏览器会根据当前页面的编码来对字符进行编码, 所以我们 直接采用:  request.setCharacterEncoding("UTF-8"); 对于get请求,浏览器自动对字符进行iso-8859-1编码 所以我们拿到以后就要对其进行iso-8859-1解码,使其成为原本的字节数组,然后再进行utf-8编码          Enumeration<String> enums = requ

ie浏览器下,get请求缓存问题

1 使用get请求数据 1)Java代码 $.getJSON("sortShow!sortShow?time="+new Date().getTime(),function(){}); 开始我是直接这样写的 Java代码 $.getJSON("sortShow!sortShow,function(){}); 所以刷新的时候IE 会显示上次的缓存,因此你必须提交新的数据,所以在后面加了个时间参数,即使你的后台没设置这个参数,但也不会报错.此时IE会重新向后台发出请求,类似的还有

浏览器清除页面JS文件缓存的方法

在调试JavaScript的时候, 有时即使刷新页面, 最新的改动也不会生效, 这是因为浏览器为了方便将JS文件进行了缓存, 因此无论怎样刷新, 使用的仍然是历史版本. 遇到这种情况的时候有两种解决方案 第一种相对比较简单: 首先按 F12 键进入浏览器的开发者模式, 接着点击图片所示的 Network 此时勾选 Disable cache 就完成了. 这个时候只需要刷新页面 F5 即可加载最新版本的JS文件, 即可展示对JS文件做出的改动 第二种方案通过修改浏览器设置, 对于不同的浏览器可能进

显示浏览器表单输入框的缓存密码

今天在学习HTML表单的时候发现我的chrome 浏览器在刷新然后提交表单的时候居然显示了我网站的用户名和密码,大家如果有谁看到了这篇文章,有兴趣的话可以试试. 一个简单的form表单 1 <html> 2 <head> 3 <title>This is a form text</title> 4 </head> 5 <form action=""> 6 <table border="1"

selenium webdriver 浏览器操作,编码问题,鼠标操作,键盘按键操作,显示和隐式等待

'''size 返回元素的尺寸text 获取元素的文本,测试用例中的断言<a id='cp'>文本信息</a>t_attribute(name) 获取元素属性值is_displayed() 设置该元素是否用户可见''' from selenium import webdriverdriver=webdriver.Firefox()driver.get("https://www.baidu.com") #获取输入框的尺寸size=driver.find_eleme

【转】谈谈浏览器的缓存过期时间

今天和同事在讨论浏览器的缓存问题.正好之前有遇到过,当时一时没有想清楚它的缓存机制,所以晚上正好有时间仔细研究了一下. 浏览器为什么要缓存?什么会缓存下来? 首先当我们访问网页的时候,很多大的图片从服务器上传输过来的时候,试想一下,如果浏览器不把图片缓存下来而是每次都要到服务器去取,那么每次都给服务器和网络造成了巨大的负担. 对于静态资源来说,浏览器不会缓存html页面的,所以你每次改完html的页面的时候,html都是改完立即生效的,不存在什么有缓存导致页面不对的问题.浏览器缓存的东西有图片,