Я бы сказал, что вы должны поместить новый файл .htaccess в папку public_html.
Попробуйте следующее с mod_rewrite в вашем файле .htaccess
RewriteEngine On # This will enable the Rewrite capabilities RewriteCond % !=on # This checks to make sure the connection is not already HTTPS RewriteRule ^/?(.*) https://%/$1 [R,L] # This rule will redirect users from their original location, to the same location but using HTTPS. # i.e. http://www.example.com/foo/ to https://www.example.com/foo/ # The leading slash is made optional so that this will work either in httpd.conf or .htaccess context
Эти три строки также необходимо добавить к файлу .htaccess в blog
папке, изменив его так, RewriteRule
чтобы он отражал эту подпапку:
RewriteRule ^/?(.*) https://%/blog/$1 [R,L]
Также может быть полезно применить mod_ssl для принудительного использования SSL с помощью директивы SSLRequireSSL :
Эта директива запрещает доступ, если для текущего соединения не включен HTTP по SSL (т.е. HTTPS). Это очень удобно в виртуальном хосте с поддержкой SSL или в каталогах для защиты от ошибок конфигурации, которые открывают вещи, которые должны быть защищены. Когда эта директива присутствует, все запросы отклоняются, которые не используют SSL. Имейте в виду, что это не сделает перенаправление на https само по себе.