如何在Magento中获取商店安全URL?

时间:2010-11-23 14:30:30

标签: forms magento

我在Magento中有一个表单显示在不安全的URL(http)上,但我需要它提交到安全URL(https)。

我显示的网址目前使用以下代码:

Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_WEB)

我假设我需要将URL_TYPE_WEB更改为其他内容。有谁知道其他东西是什么?

6 个答案:

答案 0 :(得分:48)

你试过这个吗?

Mage::getUrl('',array('_secure'=>true))

我认为这会让你成为基本的安全网址。我相信。

Mage::getUrl('customer/account/login',array('_secure'=>true))

将进入登录页面。换句话说,

Mage::getUrl('module/controller/action',array('_secure'=>true))

将您带到任何您想要的页面,只需将'module / controller / action'替换为适当的组合。

编辑 - 修正错别字

答案 1 :(得分:11)

http://blog.geekslikeshinythings.com/2014/12/magento-force-secure-urls-https-on-all.html

这适用于Magento 1.9.1 使用你的app / etc / config.xml文件

<?xml version="1.0"?>
<config>
  <frontend>
    <secure_url>
      <all>/</all>
    </secure_url>
  </frontend>
</config>

如果用户使用https,则应强制所有网址重写(创建为)为https。

答案 2 :(得分:6)

使用:

    Mage::getStoreConfig(Mage_Core_Model_Store::XML_PATH_SECURE_BASE_URL);

读取已在admin中设置的magento内的配置值。

答案 3 :(得分:3)

这对我有用

echo Mage::getUrl('customer/account/loginPost',array('_secure'=>true));

例如:

如果您使用 http 进行浏览,那么

echo Mage::getUrl('customer/account/loginPost',array('_secure'=>true));
// http://dominio.com/customer/account/loginPost

如果您使用 https 进行浏览,那么

echo Mage::getUrl('customer/account/loginPost',array('_secure'=>true));
// https://dominio.com/customer/account/loginPost

答案 4 :(得分:1)

您可以在代码中以及xml中执行此操作。

例如,如果要为结帐页面设置https,则必须在自定义config.xml中添加以下代码:

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

Magento有一个默认的https功能可以用于结账,因此您可以对其他页面执行相同的操作,例如客户页面:

<code>
        <secure_url>
                <customer>/customer/</customer>
        </secure_url>
</code>

我希望它会帮助你。

答案 5 :(得分:0)

  

试过这个为我工作。

法师::使用getURL(&#39;&#39;,阵列(&#39; _secure&#39; = GT;真))

  

最后添加此代码后,如下所示

IWD.ProductVideoView.urlGetVideo = "<?php echo Mage::getUrl('iwd_productvideo/player/getvideo/',array('_secure'=>true)); ?>?isAjax=true";