https与http请求cookie通用

今天遇到一个很有趣的问题,问https与http两种请求方式下的cookie是否通用?

因为cookie的作用域并没有区分是http请求还是https请求,所以这两种请求下只要是请求的同一域名(或同一作用域domain),cookie的都是生效的。下面来验证下:

1、第一步:先在https://passport.xxxxxx.com/test.php 设置cookie,并读取cookie。

cookie01

2、浏览器第一次请求设置好cookie,第二次请求的时候就可以读取到设置好的cookie

cookie02

3、改改代码,这次用http请求读取浏览器设置好的cookie看看看结果

cookie03

4、用http请求一次,能够正确的读取设置好的cookie

cookie04

补充一下setcookie完整的函数是这样的

setcookie(name, value, expire, path, domain); 
#path默认为/ 
#domain默认是当前请求的域名,可以设置等级更高的域名,使其作用域更广

原创转载请注明出处:http://www.xiaomastack.com/2014/08/23/https/ 谢谢!

1 Comment

 Add your comment
  1. http://docs.php.net/manual/en/function.setcookie.php

    secure
    Indicates that the cookie should only be transmitted over a secure HTTPS connection from the client. When set to TRUE, the cookie will only be set if a secure connection exists. On the server-side, it’s on the programmer to send this kind of cookie only on secure connection

发表评论:

你的电子邮件地址将不会被公开.

+ 75 = 83