Мне интересно, как magento определяет, какая страница должна быть безопасной и какая страница должна быть небезопасной.
Из того, что я понимаю, magento только делает страницу проверки и входа в систему как безопасную по умолчанию, и я могу сделать другие страницы безопасными, указав их в пути конфигурации frontend/secure_url/....
через config.xml моего модуля.
Конфигурация на стороне администратора, кажется, в порядке. SSL включен как в веб-интерфейсе, так и в бэкэнде. Бэкэнд полностью по https. В веб-интерфейсе большинство страниц отлично работают под http, включая домашнюю страницу, а страницы оформления заказа и входа в систему перенаправляются на https, как и ожидалось.
Но есть несколько других URL, перенаправляемых на https, которые я ожидал оставить на http, включая контроллер / действие пользовательского модуля.
Мне нужно несколько указателей о том, как это отладить? Есть ли другие конфигурации, которые я могу использовать, чтобы остановить их от перенаправления?
Ответы:
Существует функция только для этого, называется
shouldUrlBeSecure
расположенным вapp/code/core/Mage/Core/Model/Config.php
на линии1477
.Вот полная функция:
Чтобы увидеть, какие URL-адреса должны быть безопасными, вы можете добавить простое
Mage::log($secureUrls)
внутриif
оператора. Вот как выглядела моя запись в журнале:Теперь, чтобы выяснить, как Magento переключается
HTTP
на,HTTPS
я думаю, вы, скорее всего, погрузитесь в среду Zendlib
изнутри,lib/Zend/Http/*
поскольку она содержит файлы, представляющие наибольший интерес. Ну, во всяком случае, надеюсь, что это помогло. Удачи!источник
Если вы хотите использовать для
secure url
для ,any other modules
то вам необходимо некоторое изменение вconfig.xml
из того, что модули .. Во- первых для внешнего интерфейса используется тегиИ, если вы для productfaq url, то измените
$this->getUrl('productfaq/index/index', array('_secure'=>true))
;Мой путь расширения
\app\code\local\Amit\Productfaq\etc.
В config.xml нужно поменять ниже
источник