위의 힌트를 주셔서 감사합니다. 코어에 과부하가 걸리지 않고 코드를 "Magento-like-module"에 통합했습니다. app/etc/modules/MyCompany_MyModule.xml
에서
app/code/local/MyCompany/MyModule/Controller/Varien/Router/Standard.php
app/code/local/MyCompany/MyModule/etc/config.xml
app/etc/modules/MyCompany_MyModule.xml
은 다음과 재미 물건을 붙여 넣습니다 : app/code/local/MyCompany/MyModule/etc/config.xml
에서
<?xml version="1.0"?>
<config>
<modules>
<MyCompany_MyModule>
<active>true</active>
<codePool>local</codePool>
</MyCompany_MyModule>
</modules>
</config>
를 붙여 라우터 - 구성 :
작성에만 세 개의 파일이 있습니다
<?xml version="1.0"?>
<config>
<modules>
<MyCompany_MyModule>
<version>0.1.0</version>
</MyCompany_MyModule>
</modules>
<default>
<web>
<routers>
<standard>
<area>frontend</area>
<class>MyCompany_MyModule_Controller_Varien_Router_Standard</class>
</standard>
</routers>
</web>
</default>
</config>
을 그리고 app/code/local/MyCompany/MyModule/Controller/Varien/Router/Standard.php
에서 로직 구현 위 :
<?php
class MyCompany_MyModule_Controller_Varien_Router_Standard extends Mage_Core_Controller_Varien_Router_Standard {
protected function _checkShouldBeSecure($request, $path='') {
parent::_checkShouldBeSecure($request, $path);
if (!$this->_shouldBeSecure($path) && Mage::app()->getStore()->isCurrentlySecure()) {
$url = $this->_getCurrentUnsecureUrl($request);
Mage::app()->getFrontController()->getResponse()
->setRedirect($url)
->sendResponse();
exit;
}
}
protected function _getCurrentUnsecureUrl($request) {
if ($alias = $request->getAlias(Mage_Core_Model_Url_Rewrite::REWRITE_REQUEST_PATH_ALIAS)) {
return Mage::getBaseUrl('link', false).ltrim($alias, '/');
}
return Mage::getBaseUrl('link', false).ltrim($request->getPathInfo(), '/');
}
}
불행하게도이 문제를 해결하는 관찰 할 이벤트는 없었다 ...하지만 라우터를 무시하는 것은 (기술적으로) 교체보다는 (업데이트) 좋습니다. 추가 지식을 어떻게 정의 모듈 프론트 엔드 URL의 문제를 해결하는
확인 다음을 통해 이동하시기 바랍니다 들어
건배 그냥 발견했다. –