我正在尝试设置 cookie 以查看来自 AWS Cloudfront 的私有内容
http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-setting-signed-cookie-custom-policy.html http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-setting-signed-cookie-custom-policy.html
他们给出了一个 cookie 标头示例:
Set-Cookie: Domain=d111111abcdef8.cloudfront.net; Path=/; Secure; HttpOnly; CloudFront-Key-Pair-Id=APKA9ONS7QCOWEXAMPLE
我创建了以下 php 代码
setcookie (
'CloudFront-Key-Pair Id',
'MYID',
0,
'/',
'mycloudfrontsub.cloudfront.net',
true,
true
);
但是cookie没有设置。仅当我取出域名时才会设置 cookie。
我认为这是由于在 session_start 之后在脚本中调用 setcookie 造成的。我尝试添加这个,但在 session_start() 之前需要它
session_set_cookie_params(0, '/', 'duvoxso6rm38g.cloudfront.net);
我需要做这样的事情吗?
//close local session, then open new one for aws
$id=SID;
session_write_close();
session_set_cookie_params(0, '/', 'mysub.cloudfront.net');
session_start();
setcookie(...);
session_write_close();
session_set_cookie_params(0, '/', 'originaldomain.com');
session_start();