如果我使用php获得SSL认证,如何为特定页面启用https

时间:2011-05-25 05:51:06

标签: php ssl https oscommerce

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

有人可以帮忙吗?

2 个答案:

答案 0 :(得分:3)

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

如果您正在使用Apache,那么这是一个更通用的解决方案......

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

答案 1 :(得分:3)

要访问某个页面,您只需使用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
  3. 希望这会给你一些想法。