【问题标题】:Advice on Session var and Shared SSL关于 Session var 和 Shared SSL 的建议
【发布时间】:2010-04-21 15:42:25
【问题描述】:

我有一个客户端,它的网站仅在支付过程中使用 SSL。但是他购买了共享 SSL,所以实际的域是不同的(虽然我认为它是同一个服务器)。

因此,当用户登录例如:www.mydomain.com/login.php 并尝试购买他重定向到https://secure20.livessl.com/mydomaincom/payment.php 的东西时

现在 $_Session 变量没有设置,所以我不能将它用于支付表单。

我不想通过 GET METHOD 或 POST METHOD 发送这些...有什么想法吗? 我必须告诉客户购买私有 SSL 吗?

谢谢!

【问题讨论】:

    标签: php session ssl


    【解决方案1】:

    最好他们应该获得证书。他们现在非常实惠,这让他们的业务看起来无限更加专业。

    如果他们需要这种第 3 方方式,您为什么不想通过 POST 方法发送数据?它将被加密。

    想到的另一种想法是发送一个带有长标识符的 get 附加到查询字符串(不要使用会话 id),然后 SSL 服务器上的 PHP 脚本可以使用它来发送安全请求( CURL)返回到请求会话变量的原始服务器。但是,当 POST 可以完成时,这似乎有点过头了。

    【讨论】:

    • 好吧,我刚刚尝试发布变量,但它没有获取目标页面。我在这里想念什么?我不知道 - 我可以将变量从一个域发布到另一个域吗?
    • ok 找到了解决方案:你说得对 - 最好通过 POST 发送。我不知道它会被加密。无论如何,我只发送用户 ID,所以它并不重要。谢谢
    【解决方案2】:

    您不能在重定向中传递帖子 - 只能 GET 变量。 cookie 也不能跨域工作 - 但是没有什么可以阻止您将会话 id 作为 get var 传递,然后在引用同一会话的第二个虚拟主机上创建一个新 cookie:

    if ($_GET['sessid_from_remote']) {
       session_id($_GET['sessid_from_remote']);
    }
    session_start();
    

    但这只有在两个虚拟主机共享一个会话存储基板时才有效。

    就我个人而言,我不会将我的信用卡详细信息输入到我熟悉和信任的网站(亚马逊、贝宝、worldpay...)以外的任何网站,而且这些人不使用共享主机帐户。所以我建议使用 paypal 或 worldpay 来做安全部分,而不是使用专用的 SSL 证书。

    C.

    【讨论】:

      猜你喜欢
      • 2012-08-12
      • 1970-01-01
      • 2013-08-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-09-03
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多