This worked great to fix my empty cart problem:
As arjuna said in a Sept 2007 post: "This problem usually occurs because your site URL and Secure Site URL are different. Please, check that these URLs are the same (like: http:www.yoursite.com and https:www.yoursite.com)."
My ssl cert was issued to mydomain.com rather than www.mydomain.com, so any time a visitor came thru the www. doorway they would get the cart empty result. I redirected my visitors to mydomain.com without the www so the ssl would be consistent. I put this code first at the top of my .htaccess file and the empty cart problem is gone:
Options +FollowSymlinks
RewriteEngine on
rewritecond %{http_host} ^www.visionimprovementcenter.com [nc]
rewriterule ^(.*)$
http://visionimprovementcenter.com/$1 [r=301,nc]
I use friendly url's, so the above code comes before the ViArt friendly url redirect code. Obviously the above could be used in reverse if the ssl cert includes the www in its path.