Нет никаких причин, чтобы весь ваш сайт использовал https, вы можете сделать что-то подобное, чтобы перенаправить только нужные страницы на https:
# force https for checkout pages
RewriteCond %{HTTPS} !on
RewriteCond %{SCRIPT_FILENAME} (checkout|register|login).php$
RewriteRule (.*) https://www.example.com/$1 [R,QSA,L]
# non-secure pages
RewriteCond %{HTTPS} on
RewriteCond %{SCRIPT_FILENAME} !(checkout|register|login).php$
RewriteRule (.*) http://www.example.com/$1 [R,QSA,L]
Нет причин, по которым вы не можете получить доступ к набору файлов cookie с httpна защищенной странице я делаю это все время (если только вы не используете безопасные куки-файлы, в этом случае решение состоит в том, чтобы не использовать безопасные куки-файлы или убедиться, что весь ваш магазин использует https).
Кроме того,если вы перенаправляете, скажем, с http://example.com на http://www.example.com, вы потеряете свои куки.
Но, чтобы ответить на ваш вопрос, если вы хотите, чтобы весь ваш сайт использовал httpsкроме страницы карты, вы можете сделать что-то вроде этого:
RewriteCond %{HTTPS} !on
RewriteCond %{SCRIPT_FILENAME} !map.php
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
RewriteCond %{HTTPS} on
RewriteCond %{SCRIPT_FILENAME} map.php
RewriteRule (.*) http://%{HTTP_HOST}%{REQUEST_URI}