【问题标题】:Magento multisite form submittin get cleared in end point actionMagento 多站点表单提交在端点操作中被清除
【发布时间】:2014-02-15 08:50:06
【问题描述】:

我有一个包含以下域的 magento 网站。

http://www.site.eu/
http://www.site.it/
http://www.site.es/
http://www.site.fr/
http://www.site.de/
http://www.site.co.uk/
http://www.site.com/

我正在尝试提交电子报订阅的电子邮件地址。 (Magento 有这个)。

以下是简报订阅表格的代码

<form action="<?php echo $this->getFormActionUrl() ?>" method="post" id="newsletter-validate-detail">
    <div class="form-subscribe">
        <div class="input-box">
            <input type="text" name="email" id="newsletter" title="<?php echo $this->__('Sign up for our newsletter') ?>" class="input-text required-entry validate-email" />
        </div>
        <button type="submit" title="<?php echo $this->__('Go') ?>" class="button"><span>  <span><?php echo $this->__('Go') ?></span></span></button>
    </div>
</form>

echo $this-&gt;getFormActionUrl() 生成带有 https 的操作 url。

示例:

以下站点的 URL 名为 https://www.site.eu/newsletter/subscriber/new/ 因为配置我将基本安全 url 设置为 https://www.site.eu/

   http://www.site.it/
http://www.site.es/
http://www.site.fr/
http://www.site.de/

其他网站将使用自己的域重定向到 https。这些将正常工作
http://www.site.com/ 重定向到https://www.site.com/
http://www.site.co.uk/ 重定向到https://www.site.co.uk/

如果用户单击上述任何站点中的提交按钮,则该站点将导航到https://www.site.eu/newsletter/subscriber/new/,但没有任何发布数据。所以根据情况我无法访问 POST 变量(电子邮件)

我相信我已经正确地解释了这个问题。请指教为什么会这样?您想到了什么解决方案?

【问题讨论】:

  • 如果您将 site.eu 域作为 DNS 中的转发,那么它可能会在重定向时剥离该数据。如果您希望所有表单提交都转到 site.eu,您是否尝试过在表单操作中对其进行硬编码?打开该模板并将action="&lt;?php echo $this-&gt;getFormActionUrl() ?&gt;" 更改为action="https://www.site.eu/newsletter/subscriber/new/"。这样它就不会在重定向之前先访问其他域。
  • 谢谢,但它不起作用。提交表单后,即使它的硬编码变量在订阅者新操作中被清除。
  • 你是用IE来测试的吗?你用的是什么浏览器?

标签: magento post


【解决方案1】:

我认为问题是,您不能将数据从 http 发布到 https?或在后端尝试使用带有 https 的安全和不安全 url

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-03-06
    • 1970-01-01
    • 2023-03-17
    • 1970-01-01
    • 2015-05-03
    • 2023-02-02
    • 2023-03-22
    相关资源
    最近更新 更多