在Magento中将表单从http提交到https

时间:2013-12-18 21:45:01

标签: php magento https contacts

目前我想将我的联系人页面从http重定向到https。

我已设法通过添加以下代码在.htacces文件中重定向此单页:

RewriteCond %{HTTPS} off
RewriteRule ^(contacts/.*)$ https://www.domain.com/$1 [R=301,L]

此代码适用于我的域名。

当我点击提交时问题就到了。重定向打开后,表单无法正确提交。 indexcontroller的消息:“您的查询已提交并将尽快回复。感谢您与我们联系”没有出现,我们也没有收到电子邮件。现在我在.htacces文件中重定向了。

contacts.xml可以在app / design / front / base / default / layout / contacts.xml中找到 form.phtml在app / design / frontend / base / default / template / contacts / form.phtml

我将这两个文件复制到我的模板中,以防我需要更改它们。我尽力找到类似的东西,但我找不到任何可行的东西。请帮忙。

提前致谢

1 个答案:

答案 0 :(得分:1)

看看@ Magento - Option to Remove product from cart within product view page

config.xml

<config>
    <modules>
        <MagePal_Contacts>
            <version>0.6.0</version>
        </MagePal_Contacts>
    </modules>
    <frontend>
        <routers>
            <secure_url>
                <contact>/contact/</contact>
            </secure_url>
            <contacts>
                <use>standard</use>
                <args>
                    <modules>
                        <MagePal_Contacts before="Mage_Contacts">MagePal_Contacts</MagePal_Contacts>
                    </modules>
                    <frontName>contacts</frontName>
                </args>
            </contacts>
        </routers>

       ...

然后将表单操作更改为

<form action="<?php echo $this->getUrl('', array('_secure'=>true)) . 'contacts/index/post' ?>" ... 

<form action="<?php echo $this->getUrl('contacts/index/post', array('_secure'=>true)) ?>" ...