|
楼主 |
发表于 2008-1-8 14:00:00
|
显示全部楼层
二级域名共享cookies
步骤:$ _8 {! C F, F! R- T5 m
1、在iis新建站点3个, y4 Z0 K4 p2 m: F1 X! l2 O
www.goalercn.com(和goalercn.com),img.goalercn.com,blog.goalercn.com- w6 P6 h; d1 b0 M1 @& U; t; t
2、在www.goalercn.com下建立文件testcookies.asp,代码如下:
' ~/ E a- R7 l3 a* U1 k程序代码
. c6 X X$ w# g: l; [0 I) a @<% ; S( v5 J# F& b8 r+ @# W5 @
Response.Cookies("Type") = "Test Cookies"
7 u' U1 G4 b4 Z0 mResponse.Cookies("Type").Expires = date()+30
8 R6 H( ?- X: H! z \- }7 w, q8 U+ iResponse.Cookies("Type").Domain = ".goalercn.com"- P% N$ ?- I5 q1 `* r. F- \
Response.Cookies("Type").Secure = False
/ f9 A3 {$ X9 u8 a% O6 B6 D" YResponse.Write Request.Cookies("Type")
4 |5 h1 x4 |5 I0 |%>
) p# f7 ?/ O; C3、在ad.goalercn.com下建立文件testcookies.asp,代码如下:* ` L- |6 m+ n+ Q* t9 N
程序代码
7 g, x/ o0 |' H<%Response.Write Request.Cookies("Type")%> 4、在blog.goalercn.com下建立文件testcookies.asp,代码同上
! d5 i: j5 v r2 @5、因为是本机测试,修改hosts文件,把4个域名都指向到127.0.0.1,也就是添加如下内容:% V$ l& ^4 W0 n' }7 Z6 W7 P0 T' U
127.0.0.1 ad.goalercn.com" f7 z( x6 r' l+ w( v5 ^
127.0.0.1 blog.goalercn.com) M: C9 k$ o7 d, J
127.0.0.1 www.goalercn.com5 t* p8 i2 r3 S3 T( v
127.0.0.1 goalercn.com- W3 R! l- w4 q8 l8 |
6、关闭所有浏览器,开ie,打开http://www.goalercn.com/demo/testcookies.asp,显示出文本内容:Test Cookies
1 k7 n' s( }# l$ }7、新建窗口,打开http://ad.goalercn.com/temp/testcookies.asp,显示出文本内容:Test Cookies
2 s, D! z! {# t3 b6 \: D- F8、新建窗口,打开http://blog.goalercn.com/temp/testcookies.asp,同样显示出如上文本内容* w+ [$ R" w/ M3 `
9、换其他4个浏览器,都成功。注意点:& g: P) b9 W. g! K
1、Response.Cookies("Type").Secure = False,Secure属性一定要是false,或者直接不执行这行,如果Secure = True,则ad和blog的2级域名是取值不了。
" o! t( ^' Q" |; x& W8 ?2、Response.Cookies("Type").Domain = ".goalercn.com",domain的值,我设置为"goalercn.com",也就是没有前面的点,在IE下成功, s9 z1 J$ |' I& Y' X& S0 r
其他4个浏览器没测试。
/ N1 G. U$ x' `7 F2 m5 I3、path我猜是不应该设置的。
$ ^' G2 [ J2 \; R y7 g4、在局域网内其他机器上,修改host指向到我机器的IP,取值成功。' v8 z3 D; X3 ^
5、在局域网另外一台机器上架设ad.goalercn.com,把testcookies.asp文件copy过去,同时修改host到当前机器,取值成功 |
|