Php 为Cookie正确设置域

Php 为Cookie正确设置域,php,cookies,http-headers,session-cookies,setcookie,Php,Cookies,Http Headers,Session Cookies,Setcookie,我有一个脚本,其中$site location的托管位置将采用子域格式,例如“something.domain.com”或域“domain.com”,cookie的处理方式如下: ini_set('session.cookie_domain', $site); //for sessions setcookie($name, $value, $expiry, '/', $site, false, true); //for others 我的问题是脚本的规范url不是www,我不希望其他子域出于

我有一个脚本,其中$site location的托管位置将采用子域格式,例如“something.domain.com”或域“domain.com”,cookie的处理方式如下:

ini_set('session.cookie_domain', $site); //for sessions

setcookie($name, $value, $expiry, '/', $site, false, true); //for others
我的问题是脚本的规范url不是www,我不希望其他子域出于各种原因能够访问/读取cookie,例如“www.something.domain.com”或“www.domain.com”或“somethingelse.domain.com”或“www.somethingelse.domain.com”,那么,如果$site不继续使用www.or,您会说上面的操作正常吗

我已经到处搜索过了,也提到了php.net,并且相信从我的理解来看,上面的内容是可以的——但我希望得到保证,因为我已经阅读了许多相互矛盾/令人困惑的信息


编辑:如果上述方法不起作用-我想可能会将$site设置为false。htaccess代码将强制只能通过非www进行访问?

对不起,我不完全理解您的问题。但一般来说,如果$site=='domain.com',在设置cookie时,则位于'domain.com'、'foo.domain.com'、'www.something.domain.com'等位置的任何脚本都可以访问该cookie,无论设置cookie的脚本的规范url如何,以'domain.com'结尾的任何站点都可以访问该cookie。类似地,如果$site=='something.domain.com',则'something.domain.com','foo.something.domain.com'等处的脚本将可以访问以'something.domain.com'结尾的任何内容。