2013-02-12 35 views
8

Chào buổi tối,Cookie không được đặt trong Safari 6

Tôi đã hỏi câu hỏi này một vài lần mà không có câu trả lời, hy vọng thời gian này diễn ra tốt đẹp. Tôi đã phát triển các ứng dụng facebook trong một vài năm nay, bằng cách sử dụng php và Facebook PHP SDK. Gần đây tôi đã đấu tranh với Safari và đăng nhập với Facebook.

Vấn đề là Safari 6 đã chọn theo mặc định tùy chọn "Chặn cookie của bên thứ 3", vì vậy ứng dụng của tôi không thể đặt cookie tự động. Tôi thấy điều này chỉ trong Safari, các cookie trống, không giống như Chrome hoặc Firefox, cả hai đều đang lưu cookie tốt.

Tôi đang đăng nhập người dùng với Facebook PHP SDK example, vì vậy tôi không biết vấn đề ở đâu. Tôi đã đọc rất nhiều "giải pháp" nhưng không được cập nhật và không hoạt động cho Safari 6.

Có cách nào để đặt cookie theo cách thủ công hoặc một mẹo để thông báo cho trình duyệt rằng đây là trang web an toàn?

Tôi thực sự không biết mình đang đặt câu hỏi đúng hay không. Tôi đang tuyệt vọng về vấn đề này, thực sự, tôi đã thử tất cả mọi thứ và tôi có thể sử dụng một số trợ giúp, bất cứ điều gì sẽ giúp đỡ.

Cảm ơn bạn rất nhiều!

+0

Vấn đề cookie của bên thứ ba Safari đã được thảo luận nhiều lần ở đây trước đây, vì vậy, vui lòng thực hiện một số tìm kiếm (lại). – CBroe

+0

Vâng, tôi biết, nhưng không có cuộc thảo luận/câu trả lời nào trong quá khứ đã làm việc cho tôi. – Chuy

+0

http://stackoverflow.com/questions/1144894/safari-doesnt-set-cookie-but-ie-ff-does – Dom

Trả lời

1

bạn đã thử bất kỳ của các Setting cross-domain cookies in Safari

Safari6 ra khỏi hộp, không cho phép cookie miền chéo đó là vấn đề.

+0

thường đặt tiêu đề p3p làm thủ thuật http://ash4aque.wordpress.com/2011/09/21/cross-domain-cookies-in-safari/ –

0

Bạn đã thử phiên PHP chưa? Nếu tôi nhớ chính xác, bạn có thể đặt session.use_only_cookies thành 0 để các ID được chuyển qua sử dụng SID.

1

Bạn có thể đặt cookie bằng tay với php:

setcookie(name, value, expire, path, domain); 

http://php.net/manual/en/features.cookies.php

Hoặc là những gì bạn đang sử dụng?

Ngoài ra, hãy thử sử dụng tiêu đề p3p.

<? 
    header('P3P: CP=HONK'); 
    setcookie('test_cookie', '1', 0, '/'); 
?>