【问题标题】:How can I load files from httpdocs on the https side of the website如何从网站 https 端的 httpdocs 加载文件
【发布时间】:2012-04-24 13:10:52
【问题描述】:

在我的网络服务器上。我有两个可公开访问的目录。其中一个是 httpdocs/,另一个是 httpsdocs/。您大概可以猜到它们的用途。

当我想为自己创建一个 CMS 时出现问题。出于安全原因,我希望它使用 HTTPS 加载页面,但问题是我的文件位于 httpdocs 目录中。我只能将系统文件移动到 httpsdocs,但我的下一个想法是,如果我想在普通网站上登录以便人们登录并查看未注册用户的隐藏内容怎么办?

现在我的问题是:有没有办法将它们组合到目录中,以便所有文件都在 httpdocs 中,并且我可以使用 HTTPS 提供的安全性访问它们?

你可能需要知道的事情:

  • 网络服务器运行php 5.2.9
  • 我只能通过 FTP 访问网络服务器和这些目录。
  • 服务器运行apache,所以.htaccess是可能的。

【问题讨论】:

    标签: php .htaccess https


    【解决方案1】:

    有很多途径,但如果您无法更改 httpd.conf 或存在某些限制,大多数途径都会被阻止。

    您最好的选择可能是简单地放弃 http: 并坚持使用 https: 并在 http: 文件夹中创建一个重定向 .htaccess。这样一来,一切都在一个目录上运行。

    除非存在不允许您的用户通过 HTTP 使用 HTTPS 的缺陷。

    让您的 ISP 使 https 文件夹成为 http 文件夹的符号链接将是这里最简单的解决方案。

    【讨论】:

    • 不,我无法更改 httpd.conf。我会将一些文件移动到 HTTPS 目录。但主站点将在 HTTP 上。提交表单后,我将切换到 HTTPS 目录。我想保留 HTTP 的主要原因是网站本身不应该是 HTTPS,而观众不应该登录。是否可以在两个目录中使用相同的会话?
    • 那么问题是为什么不全部使用HTTPS呢?是否有特定的理由不使用 HTTPS?是的,您可以使用相同的会话,只要您不在 cookie 设置中使用安全标志或有不同的域并将 cookie 设置为特定域。
    • 感谢您的回复。主要原因是,就像我上面说的,网站本身不应该在 HTTP 中运行。原因之一是我从不同的网页加载了其他项目,例如图像。如果我将网站本身置于 HTTPS 中,则浏览器可以通知用户从不同位置加载不安全的项目。这不是观众不应该看到的。
    • 如果您的大部分站点位于一个子目录(或多个子目录)中,您可以尝试在 htaccess 文件中使用别名定义运行另一个站点:httpd.apache.org/docs/2.2/mod/mod_alias.html 但如果可以的话,您可以让您的生活更轻松让您的主机简单地使 https 文件夹成为 http 文件夹的符号链接。
    【解决方案2】:

    听起来您很可能使用的是分开的托管服务。如果是这种情况,那么答案是否定的,您不能将这两个目录合二为一。您可以询问您的供应商是否可以做出这种安排,但这需要更改 apache 配置,而这是您无法做到的。

    话虽如此,除非能够修改该配置,否则您将找到的唯一其他答案是将所有内容移动到 httpsdocs 目录下。除非您可以设置另一个帐户,或者他们可能提供使用 HTTPS 连接设置子域的能力。那将是另一种解决方案。

    【讨论】:

    • 感谢您的回答!我会尝试将一些文件移动到 HTTPS 目录,但我需要找到另一种方法来保证这些数据的安全。最大的问题是与表单一起发送的密码。
    • 使用 SSL 的全部意义在于它是一个加密隧道,理论上可以保护隧道内的流量不被盗取。您正在尝试保护哪些数据以及您要保护哪些数据不受侵害?
    • 抱歉反应迟了。我正在发送用户名和密码,我想保护它们免受中间人的伤害。还有其他我不想让别人知道的个人数据。数据库设置和 ftp 设置也将与 CMS 一起发送。这是数据应该加密发送的另一个原因。
    • 我仍然不明白为什么让所有东西都通过 SSL 加密隧道传输会是一个问题。这就是使用它的重点。一般来说,整个站点通常不使用 SSL 包装的原因并不是因为只加密一部分并与另一部分分开更安全,而是因为以这种方式使用 SSL 证书,具体取决于访问的流量级别您的网站,可能会增加少量延迟。更不用说证书本身的成本了。如果您已经拥有证书,并且正在提供 CMS 数据,那么一切都应该被加密。
    猜你喜欢
    • 1970-01-01
    • 2017-08-27
    • 1970-01-01
    • 2019-12-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-02
    相关资源
    最近更新 更多