【问题标题】:How do I enable https for particular pages if I got SSL certification using php如果我使用 php 获得 SSL 认证,如何为特定页面启用 https
【发布时间】:2011-05-25 05:51:05
【问题描述】:

我的 oscommerce 网站已获得 SSL 认证。我需要为某些特定页面启用 https://。

有人可以帮忙吗?

【问题讨论】:

    标签: php ssl https oscommerce


    【解决方案1】:

    打开includes/configure.php并将ENABLE_SSL设置为TRUE

    如果您使用 Apache,作为更通用的解决方案...

    if ( ! isset($_SERVER['https']) OR $_SERVER['https'] != 'On') {
        header('Location: https://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI']);
    }
    

    【讨论】:

    • 感谢您的回复,我已经在 configure.php 中启用了 SSL .. 它工作正常
    【解决方案2】:

    访问某个页面,只需要使用HTTPS协议调用即可,例如https://www.example.com。这是最简单的部分:-)。

    您会遇到的一个问题是,每个安全页面都必须确保它自己是使用此协议专门调用的。在我看来,最好在 .htaccess 文件中以通用方式完成此操作,因此您不必考虑在每个页面中实现它。一个例子:

    http://www.martinstoeckli.ch/php/php.html#ssl_switching

    这会导致会话 cookie 出现另一个问题。对于不安全的 HTTP 页面,cookie 将在未加密的情况下发送,攻击者可以劫持 cookie。在安全和不安全页面之间切换将使您的会话易受攻击。为了防止这种情况,您有两种可能性:

    1. 使用 HTTPS 保护您的整个站点。这似乎有点矫枉过正,但让您的生活更轻松,对于当今的服务器来说应该不是什么大问题。
    2. 使用第二个 cookie 保护您的安全页面,并使您的会话 cookie 不安全。如何做到这一点的一个例子,可以在这里找到:http://www.martinstoeckli.ch/php/php.html#ssl_nomim_cookie

    希望这能给你一些想法。

    【讨论】:

      猜你喜欢
      • 2015-02-21
      • 2016-01-04
      • 2010-12-02
      • 1970-01-01
      • 2021-02-22
      • 1970-01-01
      • 1970-01-01
      • 2014-11-01
      • 1970-01-01
      相关资源
      最近更新 更多