index.php없이 기본 보안 URL을 얻는 방법


10

base-secure-url없이 하고 싶습니다 index.php.

나는 index.php어떤 이유로 활성화 했습니다. 이제 Magento 루트 디렉토리에 PHP 파일이 있으며이 PHP 파일에서 Magento 보안 페이지를 호출하려고합니다.

참고 : 내 사이트에 여러 상점이 있습니다.

이것에 대한 더 많은 아이디어를 제공하십시오.


이것에 대한 길을 말해 줄 수 있습니까? 마법사 :: getStoreConfig (Mage_Core_Model_Url :: XML_PATH_SECURE_URL); 죄송합니다. 저는 magento를 처음 사용합니다
Sandy

새로운 질문이 있으면 질문하기 버튼 을 클릭하여 질문하십시오 . 컨텍스트를 제공하는 데 도움이되는 경우이 질문에 대한 링크를 포함하십시오. - 리뷰에서
Jai

이것은 질문에 대한 답변을 제공하지 않습니다. 평판 이 충분 하면 모든 게시물댓글 수 있습니다 . 대신 asker의 설명이 필요없는 답변을 제공하십시오 . - 리뷰에서
Rohan Hapani

답변:


15
Mage::getStoreConfig(Mage_Core_Model_Url::XML_PATH_SECURE_URL);

다른 사람이 없기 때문에 이것을 언급하지만 Mage::getUrlor 사용하는 것을 선호합니다 Mage::getBaseUrl. 두 페이지 모두 지정하지 않으면 페이지가 이미 안전한지 자동으로 감지합니다.


도메인 이름이 다른 멀티 스토어에서 작업하고
있습니까?

의 두 번째 매개 변수로 상점을 지정할 수 있습니다 getStoreConfig. ID, 코드 (admin에서 설정 한대로) 또는 Mage_Core_Model_Store객체를 허용하며 코드에서 사용 가능한 모든 것을 사용하십시오.
clockworkgeek

2
'Mage :: getUrl'을 'Mage :: getBaseUrl'
Ronny

11

@Aphroz가 말했듯이 사용할 수 있습니다

Mage::getBaseUrl( Mage_Core_Model_Store::URL_TYPE_WEB, true );

안전한 기본 URL을 검색합니다. 이것은 두 번째 매개 변수를 통해 지정했기 때문에 보안 URL을 반환합니다 true. 여기서 첫 번째 매개 변수는로 지정됩니다 Mage_Core_Model_Store::URL_TYPE_WEB. 이는 메소드가이 시스템 구성 필드에 해당하는 값을 리턴 함을 의미합니다 web/secure/base_url. 이 필드는 우리가 지정하는 값입니다

 System  >  Configuration  > Web  >  Secure url

따라서이 필드가 index.php기본 URL과 함께 사용 하지 않으면 메소드는 URL과 함께 index.php를 제공하지 않습니다. 보유하고 있으면 index.php동일하게 반환됩니다. 따라서 index.php가 없는지 확인하기 위해 str_replace함수 를 사용할 수 있습니다 .


이것이 Magento의 버그라고 생각하는 유일한 사람입니까? 시스템은 보안 URL에있을 때 알고 있어야하며 모든 Mage :: getBaseUrl ()을 보안으로 기본 설정해야합니다.
Gerfried

5

URL 액세스 목록 아래

CMS 페이지 또는 정적 블록에서 URL 가져 오기

  1. 기본 URL :

    {{base url=''}}
  2. 상점 URL :

    {{store url='test.html'}}

    또한 상점 URL 만

    {{store url=""}}
  3. 미디어 URL :

    미디어 URL 만 가져옵니다

    {{media url=''}}

    폴더 경로가 있으면

    {{media url='imagefolder/imagename.jpg'}}
  4. 스킨 URL :

    {skin url='images/imagename.jpg'}}

    스킨 URL 만 가져옵니다

    {skin url=''}}


PHP 파일의 URL 가져 오기 (템플릿 / PHTML 포함)

  1. 마 젠토에서 기본 URL 가져 오기 :

    $baseurl = Mage::getBaseUrl();

    index.php없이 기본 URL 얻기

    Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_WEB); 
    
    // output: http://example.com/
  2. 현재 URL

    $currentUrl = Mage::helper('core/url')->getCurrentUrl();

    또는

    $currentUrl = Mage::getUrl('*/*/*', array('_current' => true));

    또는

    if (!in_array(Mage::app()->getFrontController()->getAction()->getFullActionName(), array('cms_index_noRoute', 'cms_index_defaultNoRoute'))) 
    {
        $currentUrl = Mage::helper('core/url')->getCurrentUrl();
    }
  3. 스킨 URL :

    $skinUrl = Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_SKIN);

    안전하지 않은 스킨 URL :

    $skinUrl = $this->getSkinUrl('images/imagename.jpg');

    보안 스킨 URL :

    $this->getSkinUrl('images/imagename.gif', array('_secure'=>true));
  4. 미디어 URL

    $mediaUrl = Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_MEDIA);

    또는

    $mediaUrl = Mage::getBaseUrl('media');
  5. JS URL 얻기 :

    $jsUrl = Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_JS);

    또는

    $jsUrl = Mage::getBaseUrl('js');
  6. 상점 URL 가져 오기 :

    $storeUrl = Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_WEB);
  7. 홈 URL 얻기 :

    $homeUrl= Mage::helper('core/url')->getHomeUrl();
  8. 디렉토리 경로 가져 오기

    Mage::getBaseDir('design') // Get design directory path
    Mage::getBaseDir('code')   // Gives code directory file path
    Mage::getBaseDir('lib')    // Gives lib directory file path
    Mage::getBaseDir('skin')   // Gives skin directory file path
    Mage::getBaseDir('var')    // Gives var directory file path
    Mage::getBaseDir('cache')  // Gives cache directory file path
    Mage::getBaseDir('log')    // Gives log directory file path
  9. 모듈 URL을 만듭니다.

    Mage::getUrl('module/controller/action');

URL 가져 오기에 대한 추가 정보 얻기


3

트릭을 수행해야합니다.

Mage::getBaseUrl('link',true);

짧고 달다.


이 경우 URL에 store_code가 포함되므로 가장 확실한 방법입니다.
Raul Sanchez

1

이것을 사용할 수 없습니까?

str_replace('index.php','whatever.php',Mage::getBaseUrl('web', true));

2
친구, 그것은 올바른 방법이 아닙니다 ....
베라를

1
여기에 언급 그런 다음 마법사 :: getBaseUrl (Mage_Core_Model_Store :: URL_TYPE_WEB, TRUE) : stackoverflow.com/questions/15002254/...
Aphroz

보안 URL을 사용할 때 결과가 표시되지 않음
Amit Bera

확실하지는 않지만 .htaccess 파일이 도움이 될 수 있습니다
Trimantra Software Solution
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.