Похоже, вы пытались использовать файл htaccess opencart, а не файл htaccess вашего домена. Мне пришлось перечитать ваш оригинальный пост, чтобы наконец это понять. Пожалуйста, измените файл htacess вашего домена. Если у вас нет файла htaccess, вам нужно его создать.
Обычно это то, что используется в файле htaccess вашего домена (не в htaccess opencart). Я использовал example.com в демонстрационных целях, но вместо этого замените его своим доменом. Это также предполагает, что вы храните вашу установку / хранилище OC в подкаталоге / папке (лучшая практика в целом), и к ней обращаются по адресу www.example.com/store. Дайте мне знать, если это работает. В моем случае, как вы можете видеть, также было необходимо использовать Options + FollowSymlinks вверху. Но не уверен, что вам нужно, поскольку это может зависеть от хоста, который вы используете.
Чтобы лучше объяснить, что вы видите здесь, HTTPS использует номер порта по умолчанию 443, а HTTP использует 80. Таким образом, вы заставляете порт 80 вместо перенаправления на ваш HTTPS. Строка с «REQUEST_URI» указывает на директорию вашего магазина. При этом все файлы в каталоге должны быть HTTPS. В последней строке также указывается страница, на которую посетители будут автоматически перенаправляться при вводе текста и переходят на «www.example.com», который в итоге будет www.example.com/store/index.php. Если у вас нет установленного OC в подкаталоге вашего домена, тогда вам нужно будет адаптировать его к вашим потребностям.
Options +FollowSymlinks
RewriteEngine on
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://www.example.com/$1 [R,L]
RewriteCond %{HTTP_HOST} ^(www.)?example.com$
RewriteCond %{REQUEST_URI} !^/store/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /store/$1
RewriteCond %{HTTP_HOST} ^(www.)?example.com$
RewriteRule ^(/)?$ store/index.php [L]