백엔드 개발 PHP 튜토리얼 Cookie及其使用_PHP

Cookie及其使用_PHP

Jun 01, 2016 pm 12:38 PM
cookie 사용 기술 브라우저 사용자

Cookie

Cookie技术是一个非常有争议的技术,自经诞生它就成了广大网络用户和Web开发人员的一个争论焦点。有一些网络用户,甚至包括一些资深的Web专家也对它的产生和推广感到不满,这倒不是因为Cookie技术的功能太弱或别的技术性能上的原因,而仅仅是因为他们觉得Cookie的使用,对网络用户的隐私构成了危害。因为Cookie是由Web服务器保存在用户浏览器上的小文本文件,它包含有关用户的信息(如身份识别号码、密码、用户在Web站点上购物的方式或用户访问该站点的次数)。

那么Cookie技术究竟怎样呢?是否真的给网络用户带来了个人隐私的危害呢?还是让我们看了下面的内容,再做回答吧。

(1)Cookie技术简介

在WEB技术发展史上,Cookie技术的出现是一个重大的变革。最先是Netscape在它的Netscape Navigator 浏览器中引入了Cookie技术,从那时起,World Wide Web 协会就开始支持Cookie标准。以后又经过微软的大力推广(因为微软的IIS Web服务器所采用的ASP技术很大程度的使用了Cookier技术),即在微软的Internet Explorer浏览器中完全支持Cookie技术。到现在,绝大多数的浏览器都支持Cookie技术,或者至少兼容Cookie技术的使用。

1)什么是Cookie?

按照Netscape官方文档中的定义,Cookie是在HTTP协议下,服务器或脚本可以维护客户工作站上信息的一种方式。Cookie是由Web服务器保存在用户浏览器上的小广西文件,它可以包含有关用户的信息(如身份识别号码、密码、用户在Web站点购物的方式或用户访问该站点的次数)。无论何时用户链接到服务器,Web站点都可以访问Cookie信息。

通俗地讲,浏览器用一个或多个限定的文件来支持Cookie。这些文件在使用Windows操作系统的机器上叫做Cookie文件,在Macintosh机器上叫做magic Cookie 文件,这些文件被网站用来在上面存储Cookie数据。网站可以在这些Cookie文件中插入信息,这样对有些网络用户就有些副作用。有些用户认为这造成了对个人隐私的侵犯,更糟的是,有些人认为Cookie是对个人空间的侵占,而且会对用户的计算机带来安全性的危害。

目前有些Cookie是临时的,另一些则是持续的。临时的Cookie只在浏览器上保存一段规定的时间,一旦超过规定的时间该Cookie就会被系统清除。例如在PHP中Cookie被用来跟踪用户进程直到用户离开网站。持续的Cookie则保存在用户的Cookie文件中,下一次用户返回时,仍然可以对它进行调用。

在Cookie文件中保存Cookie,一些用户会过分地认为这将带来很大的问题。主要是有些用户担心Cookie会跟踪用户网上冲浪的习惯,譬如用户喜爱到那些类型的站点、爱从事些什么活动等。害怕这种个人信息一旦落入一些别有用心的家伙手中,那么个人也就可能成为一大堆广告垃圾的对象,甚至遭到意外的损害。不过,这种担心压根儿不会发生,因为网站以外的用户是无法跨过网站来获得Cookie信息的。所以想以这种目的来应用Cookie是不可能的。不过,由于一些用户错误的理解以及“以讹传讹”,一些浏览器开发商别无选择,只好作出相识的响应(例如Netscape Navigator4.0和Internet Explorer3.0都提供了屏蔽Cookie的选项)。

对Cookie技术期待了这么久的结果是,迫使许多浏览器开发商在它们的浏览器中提供了对Cookie的灵活性控制功能。例如,目前的两大主流浏览器Netscape Navigator 和 Internet Explorer是这样处理Cookie的:Netscape Navigator4.0不但可以接受Cookie进行警告,而且还可以屏蔽掉Cookie;InternetExplorer3.0也可以屏蔽Cookie,但在Internet Explorer4.0中就只能进行接受警告而没有提供屏蔽选项,不过在Internet Explorer4.0之后的更新版本中又加入了屏蔽Cookie的功能选项。

此外,很多最新的技术甚至已经可以在不能屏蔽Cookie的浏览器上进行Cookie的屏蔽了。例如,可以通过将Cookie文件设置成不同的类型来限制Cookie的使用。但是,非常不幸地是,要是你想完全屏蔽Cookie的话,肯定会因此拒绝许多的站点页面。因为当今已经有许多Web站点开发人员爱上了Cookie技术的强大功能,例如Session对象的使用就离不开Cookie的支持。

尽管今天仍有一些网络用户对于Cookie的争论乐此不倦,但是对于绝大多数的网络用户来说还是倾向于接受Cookie的。因此,我们尽可以放心地使用Cookie技术来开发我们的WEB页面。

2)Cookie是怎样工作的?

要了解Cookie,必不可少地要知道它的工作原理。一般来说,Cookie通过HTTP Headers从服务器端返回到浏览器上。首先,服务器端在响应中利用Set-Cookie header来创建一个Cookie,然后,浏览器在它的请求中通过Cookie header包含这个已经创建的Cookie,并且反它返回至服务器,从而完成浏览器的论证。

例如,我们创建了一个名字为login的Cookie来包含访问者的信息,创建Cookie时,服务器端的Header如下面所示,这里假设访问者的注册名是“Michael Jordan”,同时还对所创建的Cookie的属性如path、domain、expires等进行了指定。

Set-Cookie:login=Michael Jordan;path=/;domain=msn.com;
expires=Monday,01-Mar-99 00:00:01 GMT

上面这个Header会自动在浏览器端计算机的Cookie文件中添加一条记录。浏览器将变量名为“login”的Cookie赋值为“Michael Jordon”。注意,在实际传递过程中这个Cookie的值是经过了URLEncode方法的URL编码操作的。
这个含有Cookie值的HTTP Header被保存到浏览器的Cookie文件后,Header就通知浏览器将Cookie通过请求以忽略路径的方式返回到服务器,完成浏览器的认证操作。

此外,我们使用了Cookie的一些属性来限定该Cookie的使用。例如Domain属性能够在浏览器端对Cookie发送进行限定,具体到上面的例子,该Cookie只能传达室到指定的服务器上,而决不会跑到其他的如www.hp.com的Web站点上去。Expires属性则指定了该Cookie保存的时间期限,例如上面的Cookie在浏览器上只保存到1999年3月1日1秒。当然,如果浏览器上Cookie太多,超过了系统所允许的范围,浏览器将自动对它进行删除。至于属性Path,用来指定Cookie将被发送到服务器的哪一个目录路径下。

说明:浏览器创建了一个Cookie后,对于每一个针对该网站的请求,都会在Header中带着这个Cookie;不过,对于其他网站的请求Cookie是绝对不会跟着发送的。而且浏览器会这样一直发送,直到Cookie过期为止。
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

Video Face Swap

Video Face Swap

완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

Ouyi Exchange Ouyi Exchange 등록 자습서에 계정을 등록하는 방법 Ouyi Exchange Ouyi Exchange 등록 자습서에 계정을 등록하는 방법 Apr 24, 2025 pm 02:06 PM

OUYI 계정을 등록하는 단계는 다음과 같습니다. 1. 유효한 이메일 또는 휴대폰 번호를 준비하고 네트워크를 안정화시킵니다. 2. Ouyi의 공식 웹 사이트를 방문하십시오. 3. 등록 페이지를 입력하십시오. 4. 정보를 등록하고 작성하려면 이메일 또는 휴대폰 번호를 선택하십시오. 5. 검증 코드를 얻고 입력하십시오. 6. 사용자 계약에 동의합니다. 7. 등록 및 로그인을 완료하고 KYC를 수행하고 보안 조치를 설정하십시오.

Binance 다운로드 링크 Binance 다운로드 경로 Binance 다운로드 링크 Binance 다운로드 경로 Apr 24, 2025 pm 02:12 PM

Binance 앱을 안전하게 다운로드하려면 공식 채널을 살펴 봐야합니다. 1. Binance 공식 웹 사이트를 방문하십시오. 2. 앱 다운로드 포털을 찾아서 클릭하십시오.

Apple 휴대 전화 용 Ouyi Exchange 앱의 공식 웹 사이트 다운로드 Apple 휴대 전화 용 Ouyi Exchange 앱의 공식 웹 사이트 다운로드 Apr 28, 2025 pm 06:57 PM

Ouyi Exchange 앱은 Apple 휴대 전화 다운로드를 지원하고, 공식 웹 사이트를 방문하고, "Apple Mobile"옵션을 클릭하고, App Store에 입력하고 설치하고, Cryptocurrency 거래를 수행하려면 등록 또는 로그인합니다.

온쇄 거래 란 무엇입니까? 글로벌 거래는 무엇입니까? 온쇄 거래 란 무엇입니까? 글로벌 거래는 무엇입니까? Apr 22, 2025 am 10:06 AM

50 개의 피아트 통화 채널, 냉간 저장 비율 95%및 제로 보안 사고 기록을 포함하는 EU MICA 규정 준수 인증. 미국 SEC 라이센스 플랫폼은 화폐 통화의 직접 구매, 98% 냉장 저장, 기관 수준 유동성, 대규모 OTC 및 사용자 정의 주문 및 다중 레벨 청산 보호를 지원합니다.

참깨 오픈 도어 공식 웹 사이트 입구 참깨 오픈 도어 공식 최신 입구 2025 참깨 오픈 도어 공식 웹 사이트 입구 참깨 오픈 도어 공식 최신 입구 2025 Apr 28, 2025 pm 07:51 PM

참깨 오픈 도어는 암호 화폐 거래에 중점을 둔 플랫폼입니다. 사용자는 공식 웹 사이트 또는 소셜 미디어를 통해 포털을 얻을 수있어 액세스 중에 SSL 인증서 및 웹 사이트 컨텐츠의 진위가 확인되도록 할 수 있습니다.

참깨 오픈 교환에 계정을 등록하는 방법은 무엇입니까? 참깨 오픈 교환 등록에 관한 튜토리얼 참깨 오픈 교환에 계정을 등록하는 방법은 무엇입니까? 참깨 오픈 교환 등록에 관한 튜토리얼 Apr 24, 2025 pm 02:00 PM

참깨 도어 오픈 계정을 등록하려면 7 단계가 필요합니다. 1. 유효한 이메일 또는 휴대폰 번호와 안정적인 네트워크를 준비하십시오. 2. 공식 웹 사이트를 방문하십시오. 3. 등록 페이지를 입력하십시오. 4. 등록 방법을 선택하고 작성하십시오. 5. 검증 코드를 얻고 입력하십시오. 6. 사용자 계약에 동의합니다. 7. 등록 및 로그인을 완료하면 KYC를 수행하고 보안 조치를 설정하는 것이 좋습니다.

USDT 전송 주소가 잘못된 경우 어떻게해야합니까? 초보자를위한 가이드 USDT 전송 주소가 잘못된 경우 어떻게해야합니까? 초보자를위한 가이드 Apr 21, 2025 pm 12:12 PM

USDT 전송 주소가 잘못된 후 먼저 전송이 발생했음을 확인한 다음 오류 유형에 따라 측정 값을 취합니다. 1. 전송 확인 : 트랜잭션 기록을보고 블록 체인 브라우저에서 트랜잭션 해시 값을 얻고 쿼리하십시오. 2. 조치를 취하십시오 : 주소가 존재하지 않으면 자금이 반환 될 때까지 기다리거나 고객 서비스에 연락하십시오. 유효하지 않은 주소 인 경우 고객 서비스에 문의하고 전문적인 도움을 구하십시오. 다른 사람에게 양도되면 수취인에게 연락하거나 법적 도움을 요청하십시오.

두 교환이 동전을 서로 변환 할 수 있습니까? 두 교환이 동전을 서로 변환 할 수 있습니까? 두 교환이 동전을 서로 변환 할 수 있습니까? 두 교환이 동전을 서로 변환 할 수 있습니까? Apr 22, 2025 am 08:57 AM

할 수 있다. 두 교환은 동일한 통화 및 네트워크를 지원하는 한 동전을 서로 전달할 수 있습니다. 단계에는 다음이 포함됩니다. 1. 수집 주소 얻기, 2. 철회 요청 시작, 3. 확인을 기다리십시오. 참고 : 1. 올바른 전송 네트워크를 선택하십시오. 2. 주소를주의 깊게 확인하십시오.

See all articles