Jak sprawić, by moje niestandardowe strony modułów korzystały z protokołu SSL?

11

Utworzyłem moduł z niektórymi stronami i zastanawiam się, jak zmusić te strony do korzystania z protokołu SSL w adresie URL, np. Na stronie logowania klienta. Nie wszystkie strony tego potrzebują, ale niektóre tak.

Co przychodzi mi na myśl (choć jeszcze tego nie próbowałem) to ocena https://adresu URL w kontrolerze akcji i przekierowanie do tego, czy SSL jest włączony w konfiguracji magento i bieżący adres URL go nie używa.

Czy to podejście jest prawidłowe? Czy takie ustawienie wchodzi w plik konfiguracyjny?

Vic
źródło

Odpowiedzi:

13

Tak, wchodzi do pliku konfiguracyjnego. Jeśli spojrzysz na core/Mage/Checkout/etc/config.xmlto, zobaczysz, jak Magento robi to przy kasie:

<frontend>
    <secure_url>
        <checkout_onepage>/checkout/onepage</checkout_onepage>
        <checkout_multishipping>/checkout/multishipping</checkout_multishipping>
    </secure_url>
</frontend>

Możesz skonfigurować własne kontrolery, aby korzystały z bezpiecznego adresu URL w ten sam sposób.

Nazwa tagu ( <checkout_onepage>) może być dowolna, o ile jest unikalna.

Wartość ( /checkout/onepage) musi być zgodna z początkiem adresów URL, które powinny być bezpieczne. Jest porównywany z rzeczywistym adresem URL, a nie nazwą trasy!

Fabian Schmengler
źródło
musisz także ustawić wartość web/secure/use_in_frontendtrue.
szampon
Aby uzyskać więcej informacji na ten temat: javidh.ir/magento-how-to-deliver-secure-urls
szampon