У меня есть настройка мультимагазина на magento с несколькими доменами. Но я хочу, чтобы только один конкретный магазин/домен имел https и перенаправлял все URL-адреса, отличные от https, для этого домена на https. Включая весь путь.
Например, все URL-адреса в этом списке ведут на https://www.
Исходные ссылки: http:// webwinkel.nl/willekeurige-categorienaam www. webwinkel.nl/willekeurige-categorienaam http:// www.webwinkel.nl/willekeurige-categorienaam https:// webwinkel.nl/willekeurige-categorienaam
Целевой URL: https://www.webwinkel.nl/willekeurige-categorienaam
Я использую это для одного магазина, и в этом случае он работает идеально.
RewriteCond %{HTTPS} off
# First rewrite to HTTPS:
# Don't put www. here. If it is already there it will be included, if not
# the subsequent rule will catch it.
RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
# Now, rewrite any request to the wrong domain to use www.
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule .* https://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Но для мультистора это не работает, потому что он будет перенаправлять каждый домен магазина на https, а я хочу https только для одного конкретного магазина.
Редактировать
@itoctopus: Спасибо за ответ!
Это работает для www.webwinkel.nl. Но не для других доменов в том же мультимагазине.
Например, у меня есть www.webwinkel.nl, www.webwinkel2.nl и www.webwinkel3.nl. С вашим кодом все они будут перенаправлены на www.webwinkel.nl.
Это весь мой htaccess сейчас:
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{HTTP_HOST} ^(.*)webwinkel.nl [NC]
RewriteRule . - [E=MAGE_RUN_TYPE:website]
RewriteCond %{HTTP_HOST} ^(.*)webwinkel.nl [NC]
RewriteRule . - [E=MAGE_RUN_CODE:webwinkel]
RewriteCond %{HTTP_HOST} ^(.*)webwinkel2.nl [NC]
RewriteRule . - [E=MAGE_RUN_TYPE:website]
RewriteCond %{HTTP_HOST} ^(.*)webwinkel2.nl [NC]
RewriteRule . - [E=MAGE_RUN_CODE:webwinkel2]
RewriteCond %{HTTP_HOST} ^(.*)webwinkel3.nl [NC]
RewriteRule . - [E=MAGE_RUN_TYPE:website]
RewriteCond %{HTTP_HOST} ^(.*)webwinkel3.nl [NC]
RewriteRule . - [E=MAGE_RUN_CODE:webwinkel3]
# First condition - redirect non-www to www for all domains
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
# Second condition - redirect HTTP to HTTPS for a particular domain
RewriteCond %{HTTP_HOST} ^webwinkel\.nl$ [OR]
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://www.webwinkel.nl/$1 [R=301,L]