我需要编写什么代码才能使用 HTTPS?

发布于 2024-09-26 15:52:18 字数 119 浏览 4 评论 0原文

在标准的“小册子”站点中,我有一个子系统,其中私人数据在一系列页面中来回传递。该网站已完成,现在可以在没有 HTTPS 的情况下运行。

有人可以向我指出在网站的安全部分实施 HTTPS 所需执行的步骤列表吗?

Within a standard "brochure" site I have a subsystem where private data is passed back and forth in a series of pages. The site is done and working now without HTTPS.

Can someone point me to a list of steps that I need to do, to implement HTTPS on the secure part of the site?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

小矜持 2024-10-03 15:52:18

作为程序员,您唯一需要做的就是检查用户是否确实使用 HTTPS:

if($_SERVER['SERVER_PORT'] !== 443 &&
   (empty($_SERVER['HTTPS']) || $_SERVER['HTTPS'] === 'off')) {
  header('Location: https://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI']);
  exit;
}

然后(让您的系统管理员)在 Web 服务器上订购并安装 SSL 证书。

The only thing you as a programmer need to do is checking that the user in fact uses HTTPS:

if($_SERVER['SERVER_PORT'] !== 443 &&
   (empty($_SERVER['HTTPS']) || $_SERVER['HTTPS'] === 'off')) {
  header('Location: https://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI']);
  exit;
}

Then (have your sysadmin) order and install a SSL certificate on the web server.

久光 2024-10-03 15:52:18

网站必须自行配置,此时这与 php 本身无关。

在您的本地 PC 上,我认为您使用 Apache 作为 Web 服务器。
所以对于Apache你需要安装一个证书,Apache需要监听https端口(默认为443)。

您可以查看此链接,它可以帮助您: http://www.onlamp.com/pub/a/onlamp/2008/03/04/step-by-step-configuring-ssl-under-apache.html

此外,在网站的所有部分中,您都需要在 url 中使用 https 协议,而不是 http。
例如 https://example.com

The web site must be configured itself, this is not related to php itself at this point.

On your local PC I think you use Apache as web server.
So for Apache you need install a certificate, Apache need to listen https port (443 by default).

You can view this link, it can help you: http://www.onlamp.com/pub/a/onlamp/2008/03/04/step-by-step-configuring-ssl-under-apache.html

Also, in all sections of the web site you need use https protocol in url, not http.
E.g. https://example.com

帝王念 2024-10-03 15:52:18

不涉及 PHP 代码更改。 HTTPS 意味着浏览器和网络服务器之间的通信数据将被加密。浏览器已设置为 HTTPS,您所要做的就是配置您的 Web 服务器。您很可能可以从托管控制面板本身完成整个更改。

如果你想强制使用 HTTPS,你可以使用一行 mod_rewrite 代码

There is no PHP code change involved. HTTPS means the data that the communication between the browser and the webserver will be encrypted. The browser is already setup for HTTPS, all you have to do is to configure your web server. Most probably you can do the whole change from your hosting control panel itself.

If you want to force HTTPS, you can use a one line mod_rewrite code

迷乱花海 2024-10-03 15:52:18

试试这个:

<?php
  if ($_SERVER['HTTPS'] != 'on') {
    echo '<script type="text/javascript">window.location = "https://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'] . '";</script>';
  }
?>

Try this:

<?php
  if ($_SERVER['HTTPS'] != 'on') {
    echo '<script type="text/javascript">window.location = "https://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'] . '";</script>';
  }
?>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文