【问题标题】:php adding SSL certificatephp添加SSL证书
【发布时间】:2015-02-05 19:38:30
【问题描述】:

我有问题。

我的网站在结帐页面上运行 SSL。这是我收到的当前消息。

https://jonathanmichael.co.uk/checkout/”处的页面已加载完毕 HTTPS,但正在将数据提交到不安全的位置 'http://jonathanmichael.co.uk/': 这个内容也要提交 通过 HTTPS。

<form action="http://jonathanmichael.co.uk/" method="get" id="adminbarsearch"><input class="adminbar-input" name="s" id="adminbar-search" type="text" value="" maxlength="150"><input type="submit" class="adminbar-button" value="Search"></form>

我的问题是如何解决这个问题?我正在使用 Wordpress,我找到了我认为链接到它的这段代码。

searchform.php

<!-- Start SearchForm -->
<form method="get" class="searchform" role="search" action="<?php echo home_url(); ?>/">
    <fieldset>
        <input name="s" type="text" id="s" placeholder="<?php _e( 'Search', THB_THEME_NAME ); ?>" class="small-12">
    </fieldset>
</form>
<!-- End SearchForm -->

如果我对 PHP 的了解为零,我将不胜感激。

谢谢!

【问题讨论】:

  • 将呼叫更改为&lt;?php echo home_url('', 'https'); ?&gt; 是否有效?

标签: php wordpress ssl


【解决方案1】:

简单。只需将表单操作显式更改为:

<form action="https://jonathanmichael.co.uk/checkout/"

另外,请在表单中使用 $_POST$_GET 不应用于任何应该是安全的。

<form action="https://jonathanmichael.co.uk/checkout/" method="POST" id="adminbarsearch">

【讨论】:

  • 嗨,斯蒂芬,我在哪里可以找到这个?在 html 文档或其他内容中?
  • 问题似乎是结帐页面上的搜索表单正在发布到常规http,因此浏览器正在抱怨。帖子中的表格不是结帐表格。
【解决方案2】:

您需要将$scheme 参数传递给对home_url() 的调用

这将让您生成带有https:\\ 前缀的链接。

查看文档:http://codex.wordpress.org/Function_Reference/home_url

<!-- Start SearchForm -->
<form method="get" class="searchform" role="search" action="<?php echo home_url($scheme = https); ?>/">
    <fieldset>
        <input name="s" type="text" id="s" placeholder="<?php _e( 'Search', THB_THEME_NAME ); ?>" class="small-12">
    </fieldset>
</form>
<!-- End SearchForm -->

【讨论】:

  • 嗨,这似乎不起作用。我现在还有两个错误,错误出现在我的网站上。我想知道你是否可以提供一些帮助?如果您将某些东西添加到购物车并继续结帐 - jonathanmichael.co.uk/checkout 亲切的问候。
  • jonathanmichael.co.uk/checkout”处的页面已通过 HTTPS 加载,但正在将数据提交到“jonathanmichael.co.uk/https”处的不安全位置:此内容也应通过 HTTPS 提交。 (index):550 位于“jonathanmichael.co.uk/checkout”的页面是通过 HTTPS 加载的,但正在将数据提交到位于“jonathanmichael.co.uk”的不安全位置:此内容也应通过 HTTPS 提交。
  • 尝试使用home_url( $path = '/', $scheme = https ); 也许你需要同时指定这两个参数。
  • 已更新:“jonathanmichael.co.uk/checkout”处的页面已通过 HTTPS 加载,但正在向“jonathanmichael.co.uk/”处的不安全位置提交数据:此内容也应通过 HTTPS 提交。 (index):547 'jonathanmichael.co.uk/checkout' 处的页面已通过 HTTPS 加载,但正在将数据提交到 'jonathanmichael.co.uk' 处的不安全位置:此内容也应通过 HTTPS 提交。 :(
  • 看起来应该是home_url( $path = '', $scheme = 'https'); 以获得正确的 URL。并且希望围绕 https 的引号实际上会获得一个安全的 URL。
猜你喜欢
  • 2021-01-17
  • 1970-01-01
  • 1970-01-01
  • 2023-03-13
  • 1970-01-01
  • 1970-01-01
  • 2021-12-20
  • 2019-08-13
  • 1970-01-01
相关资源
最近更新 更多