Safari, cookies, and lost time
Recently we found ourselves with a bit of a problem. Safari was not storing a session id cookie from ExpressionEngine. Firefox, however, was. Missing cookies are trouble.
After tons of googling and testing we were able to find the culprit… time. More specifically the server’s time was incorrect and Safari seems to be quite strict with cookie expiration. The server was sending a cookie expiration date in GMT that was already expired. This made Safari ignore the cookie and prevent things from functioning.
With this discovery we were able to work with the server admin and fix the time issue. After correcting the time on the server, the cookie was back and the site was working.
This solution will most likely help with other Safari cookie issues, so keep it in mind if your cookies are enabled in Safari but things aren’t working.