『壹』 cookies不設置過期時間默認是永遠不過期嗎
並不是的,默認cookies生存期限就到關閉瀏覽器為止。
設置Cookie的生存期。有兩種存儲類型的Cookie:會話性與持久性。Expires屬性預設時,為會話性Cookie,僅保存在客戶端內存中,並在用戶關閉瀏覽器時失效。
持久性Cookie會保存在用戶的硬碟中,直至生存期到或用戶直接在網頁中單擊「注銷」等按鈕結束會話時才會失效 。
(1)設置cookie有效期擴展閱讀:
Cookie文本數據組成:
1、Name/Value:設置Cookie的名稱及相對應的值,對於認證Cookie,Value值包括Web伺服器所提供的訪問令牌 。
2、Path屬性:定義了Web站點上可以訪問該Cookie的目錄。
3、Domain屬性:指定了可以訪問該 Cookie 的 Web 站點或域。Cookie 機制並未遵循嚴格的同源策略,允許一個子域可以設置或獲取其父域的 Cookie。當需要實現單點登錄方案時,Cookie 的上述特性非常有用,然而也增加了 Cookie受攻擊的危險。
比如攻擊者可以藉此發動會話定置攻擊。因而,瀏覽器禁止在Domain屬性中設置.org、.com 等通用頂級域名、以及在國家及地區頂級域下注冊的二級域名,以減小攻擊發生的范圍 。
4、Secure屬性:指定是否使用HTTPS安全協議發送Cookie。使用HTTPS安全協議,可以保護Cookie在瀏覽器和Web伺服器間的傳輸過程中不被竊取和篡改。該方法也可用於Web站點的身份鑒別,即在HTTPS的連接建立階段,瀏覽器會檢查Web網站的SSL證書的有效性。
但是基於兼容性的原因(比如有些網站使用自簽署的證書)在檢測到SSL證書無效時,瀏覽器並不會立即終止用戶的連接請求,而是顯示安全風險信息,用戶仍可以選擇繼續訪問該站點。由於許多用戶缺乏安全意識,因而仍可能連接到Pharming攻擊所偽造的網站。
5、HTTPOnly 屬性 :用於防止客戶端腳本通過document.cookie屬性訪問Cookie,有助於保護Cookie不被跨站腳本攻擊竊取或篡改。
但是,HTTPOnly的應用仍存在局限性,一些瀏覽器可以阻止客戶端腳本對Cookie的讀操作,但允許寫操作;此外大多數瀏覽器仍允許通過XMLHTTP對象讀取HTTP響應中的Set-Cookie頭 。
『貳』 PHP即時cookie有效期時間怎麼設置
回"問題復補充"
PHP手冊上關於setcookie函數的expire參數制有這樣一個解釋
If set to 0, or omitted, the cookie will expire at the end of the session (when the browser closes).
如果設為0 或者忽略該參數, cookie將在session結束時(關閉瀏覽器時)過期
所以, 如果要寫4,5個參數, 那把第三個設為0就可以了
『叄』 如何設置cookie的有效期
如果是開發者那就可以兩種方式設置cookie有效期了:javascript設置和伺服器腳本語言設置(專有php或者屬java或者asp或者.NET)
js是這樣設置的:
function zxmcook(name,value,time){ //函數名字自己隨意定義,zxm是哥哥我名字,你就不要郁悶了
var exp=new Date();
exp.setTime(exp.getTime()+time*60*24*60*1000); //這里的time就是天數
document.cookie=name+"="+escape(value)+";expires="+exp.toGMTString();}zxmcook("mn","zxm",1)//這就是一天
ok就這樣了 累死我了
『肆』 如何設置COOKIE的有效時間
如何設置COOKIE的有效時間
具體:
Cookie cookie = new Cookie( "username", userName );
// default cookie's age is -1, indicating the cookie will persist until browser shutdown.
// so set cookie's age to 120 days: 120 * 24 * 60 * 60 * 60 seconds
cookie.setMaxAge( 622080000 );
response.addCookie( cookie );
System.out.println("Save user " + userName + " to cookie";
詳細版看看 java 的 api 文檔權
『伍』 ASP里,cookies如何設置有效期一小時、一天、一個月
Asp操作Cookies(設置[賦值]、讀取、刪除[設置過期時間])
Response.Cookies("letwego")("visiter")="84ww" '賦值
Response.Cookies("letwego").Expires= (now()+7) '設置過期時間(7天)
userName=Request.Cookies("letwego")("visiter") '取Cookies
Response.Cookies("letwego").Expires= (now()-1) '刪除Cookies,設置過期時間(-1天)
'dateadd("n",30,now()) 得到分鍾
'dateadd("S",30,now()) 得到秒
一、讀取
Response.Cookies("visiter")="aaa"
a=Request.Cookies("visiter")
Response.Cookies("letwego")("visiter")="aaa"
a=Request.Cookies("letwego")("visiter")
二、設置過期時間
Response.Cookies("visiter").expires=dateadd("H",8,now())'表示Cookies保存8小時
Response.Cookies("user_name").Expires=Date+1 '指定cookie保存時間
保留COOKIES一個小時
Response.Cookies("MyCookie").Expires= (now()+1/24)
Response.Cookies("MyCookie").Expires = DateAdd("h", 1, Now())
Response.Cookies("CookieName").Expires=DateAdd("m",60,now())
設置60個月以後過期
Response.Cookies("User").expires=second()+7
在expires後面定義的時間可以用時間函數代替
例如:date()+7就表示在今天的時間上加上7天,而second()+7則是7秒了。
Response.Cookies("欄位名").expires=時間函數+N,例如:
Response.Cookies("name2").expires=date+1,表示Cookies保存1天,再比如:
Response.Cookies("name2").expires=Hour+8,表示Cookies保存8小時。
這種方法我測試過不行(在2003server,iis6.0中),不管second後面有無加(),訪問時會出現500錯誤(還是無法顯示網頁?忘了)。
織夢尤文:這里的時間累加建議還是使用DateAdd函數,比如我們要累加一小時,則使用:
Response.Cookies("dooglecom").expires = DateAdd("h", 1, Now())
30分鍾:
Response.Cookies("CookieName").Expires=DateAdd("n",30,now())
dateadd("S",30,now()) 得到秒
Expires 指定 cookie 的過期日期。為了在會話結束後將 cookie 存儲在客戶端磁碟上,或在許多時候,我們希望能更長時間地在訪問者的計算機上保存cookie。必須設置該日期。
若此項屬性的設置未超過當前日期,則在任務結束後 cookie 將到期。
cookie的使用到期時間為「2010年1月1日」: Response.Cookies("CookieName").Expires=#January 01, 2010#
cookie的過期時間為「cookie的創建時間+365天」:Response.Cookies("CookieName").Expires=Date+365 推薦的
但最好不要隨便寫 Response.Cookies("CookieName").Expires=Date,這樣頁面之間的調用時值會為空。
-----------------------------------------------------------------------------------------------------------------------
在asp中,我們可以用response.cookies方法,定義cookies的值。方法如下:
response.cookies(cookiesname)[(key)|.attribute]=value
解釋如下:cookiesname是你想要的cookies的名字,比如:test
參數key:可選參數,當然,不指定也可以了。:)
key用於指定詞典式cookie的了cookie的名稱。我的理解似乎與一個數組類似。
參數attribute可選,指定cookie本身的相關信息,比如指定特定的網址、路徑、有效期等。
可選的值有:Domain 只能讀取特定域名的cookie
Expires cookie的有效期限
Haskeys 是否含有子cookie
Path 只能在指定路徑上讀取Cookie
Secure 指定cookie是否加密
比如,要在本網站指定名為naxizu的cookie,方法如下:
Response.Cookies("naxizu").Domain = "http://www.xxx.com/" 『指定http://www.xxx.com/訪問
Response.Cookies("naxizu").Path = "E-Blog" '指定E-Blog目錄訪問
Response.Cookies("naxizu").Expires= DateAdd("d",2,date) '指定兩天後過期
Response.Cookies("naxizu")("name")="測試"
Response.Cookies("naxizu")("type")="呵呵"
上面這兩句就是製作了一個詞典式的cookie。
關於Haskeys的用法,相當簡單,request.Cookies(cookie).Haskeys就可以了,比如要判斷一個cookies是否為詞典式,就可以寫成
<%
If Request.Cookies("naxizu").Haskeys Then
Response.Write "這是一個詞典式的Cookies"
Else
Response.Write "這不是一個詞典式的Cookies"
End If
%>
參考下。
『陸』 請問一個php設置cookie有效期的問題
登錄就開始保存cookie
刷新也不會重新計算的
不管動什麼手腳都會一直到過期專,用戶名和密屬碼就消失了。
那麼把cookie放在當前頁面
一刷新就開始保存,再刷新
那就是重新開始計算了,一直到期,你也看不出來有什麼變化的。
『柒』 怎樣更改瀏覽器的cookie保存時間
1、首先點擊Chrome菜單按鈕⋮,帶有三個點的圖標。
『捌』 php setcookie('times','1',time()+60) 是不是設置cookie 為60秒的有效期
沒看到你復的代碼,所以寫了個示制例:
1. test1.php 設置cookie,並令其生存期為60秒
<?php
setcookie("times", "1", time()+60);
?>
2. test2.php 取cookie
<?php
if (isset($_COOKIE["times"]))
echo "times " . $_COOKIE["times"] . "!<br />";
else
echo "cookie不存在!<br />";
?>
test2.php 的運行結果:
times 1!
運行正常啊,可以取得cookie。
如果取不到,請檢查瀏覽器的cookie設置。
『玖』 如何設置COOKIES的有效時間為5分鍾
1. dateadd法
1)將期限設置為當前日期後的第N天的0時分0秒
Response.Cookies(「LastView」).Expires=dateadd(「d」,N,date)
2)將期限設置為當前日期後的第N月的同一天的0時0分0秒
Response.Cookies(「LastView」).Expires=dateadd(「m」,N,date)
3)將期限設置到當前時間後的第N天的該時該分該秒
Response.Cookies(「LastView」).Expires=dateadd(「d」,N,now)
4)將期限設置到當前時間後的第N+M天的該時該分該秒
Response.Cookies(「LastView」).Expires=dateadd(「d」,N,now+M)
5)將期限設置到當前時間後的第N月的該時該分該秒
Response.Cookies(「LastView」).Expires=dateadd(「m」,N,now)
6)將期限設置到當前時間後的第N月的同一日後的第M天的該時該分該秒
Response.Cookies(「LastView」).Expires=dateadd(「m」,N,now+M)
2. 確定日期法
1)將期限設置到某一日的0時0分0秒失效
舉例:到2003年1月29日0時0分0秒失效
Response.Cookies(「LastView」).Expires=# 1/29/2003 #
或
Response.Cookies(「LastView」).Expires=# 2003/1/29 #
或
Response.Cookies(「LastView」).Expires=「January 29,2003」
2)將期限設置到某一日的某一時刻失效
舉例:到2003年1月29日21時0分0秒失效
Response.Cookies(「LastView」).Expires = #2003/1/29 21:00:00#
或
Response.Cookies(「LastView」).Expires = #1/29/2003 21:00:00#
或
Response.Cookies(「LastView」).Expires = #January 29,2003 21:00:00#
其實,在這種方法中,用「「 」」和「# #」的效果是一樣的。例如
Response.Cookies(「LastView」).Expires=「January 29,2003」
和
Response.Cookies(「LastView」).Expires=# January 29,2003 # 的效果就是相同的。
3. date+ \now+ 法
這種方法主要結構為Date+數學式或now +數學式。通過簡單的四則運算的方法,將Cookie 的失效時間設置到當前時間後的某一段時間內。這里的加號都表示在當前時間的基礎上加上預設時間。
1)date+法
如將期限設置為當前日期後的第N天的0時0分0秒,我們可以使用上述已談到過的方法也可以使用如下格式:
Response.Cookies(「LastView」).Expires=Date+N
date+法是一種比較死的方法。它和上述方法差別不是很大,完全可以由上述幾種方法代替。下面介紹now+法,這是一種比較靈活的方法,它可以將失效時間准確地定位到當前時間後的任意一年、一月、一天、一小時、一分、一秒。
2)now+法
先舉一個例子: Response.Cookies(「LastView」).Expires = now+1
這條語句的功能是:把Cookie的失效時間限制到1天後的同一時刻。這里的1代表1天,即24小時。由於now代表當前Web伺服器的系統時間,包括年、月、日、時、分、秒,則該語句所表達得Cookie 的失效日期在明天的同一時、分、秒上。若改成now+2則表示此Cookie 的失效日期在兩天後的同一時、分、秒上;now+30表示此Cookie 的失效日期在一個月後的同一時、分、秒上;now+30*2表示此Cookie 的失效日期在兩個月後的同一時、分、秒上;now+365則表示此Cookie 的失效日期在一年後的同一時、分、秒上……
當把1分成24等份,即該語句變成: Response.Cookies(「LastView」).Expires = now+1/24則表示把Cookie的失效時間限制到一小時後。在此基礎上,把1再分60等份,即把now+1/24改成 now+1/1440,則表示把Cookie的失效時間限制到一分鍾後。這里的1440是由24*60得來。同理,要把Cookie的失效時間限制到十分鍾後,則把程序變成Response.Cookies(「LastView」).Expires = now+10/1440;要把Cookie的失效時間限制到一秒鍾後,則程序變成Response.Cookies(「LastView」).Expires = now+1/86400。當然,理論上把Cookie的失效時間限制到微秒級也是可以的。不過,那就沒有什麼實際意義了。另外,如果程序語句變成: Response.Cookies(「LastView」).Expires = now+1+1/1440則表示Cookie的失效時間為24小時零一分鍾後。