如何使用 HTTPS 包含文件 - PHP
我制定了一个表单流程,并将代码分解为不同的文件,以保持整洁和组织。
现在我正在设置 https 安全性的表单。
我拉入页面的所有文件是否也必须以 https 形式调用? 在这种情况下我不能再使用 include();因为它不再允许相对路径?
解决方案是使用 file_get_contents(); 吗?或者只有(主)页面本身需要被称为 https?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
听起来你对术语感到困惑。 HTTPS 是用于使用 SSL 或 TLS 加密从服务器请求页面的协议。这与您处理请求的方式是分开的。
在您的 PHP 源代码中,包含内容是在服务器端处理的。所有包含内容都将在 PHP 将页面交给您的 Web 服务器以通过 TLS 链接返回之前完成。
file.php:
在上面的示例中,用户代理(浏览器)永远不会看到 fileA.php 或 fileB.php。页面请求作为单个文档返回。您可以通过 https://my-server.com/file.php 请求它,其中这就是您所需要的。
It sounds like you are confusing terminology. HTTPS is the protocol used to request a page from the server using SSL or TLS encryption. That is separate from how you serve the request.
In your PHP source includes are processed server-side. All of the includes will be done before PHP hands the page off to your web server to be returned over the TLS link.
file.php:
In the example above, the user agent (browser) never sees fileA.php or fileB.php. The page request is returned as a single document. You might request it via https://my-server.com/file.php, in which case that is all you need.
如果文件位于同一服务器上,则无需更改任何内容。
包括(“文件.php”);
会工作得很好。
另外,如果您要包含来自其他 https 服务器的文件,只要您正确设置了 tls 库,https 就不是问题
include("https://anotherserver.com/file.php");
如果其他服务器提供 PHP 服务并且不执行它,则可以工作。
IF the files are on the same server you don't need to change anything.
include("file.php");
Will work just fine.
Also if you were to include a file from a nother https server, as long as you have the tls libraries setup properly, https isn't a problem
include("https://anotherserver.com/file.php");
would work provided the other server serves the PHP and does not execute it.