【问题标题】:Accessing PHP files outside physical path in IIS在 IIS 中访问物理路径之外的 PHP 文件
【发布时间】:2021-06-01 06:58:40
【问题描述】:

有人告诉我,出于安全原因,所有 PHP 数据处理文件都应位于网站根目录之外。我有一个托管在 IIS 10 中的网站,其中包含根目录之外的文件夹。像这样的东西:- website: C:\inetpub\wwwroot\index.php 和 PHP files C:\includes\submit.inc.php 这显然不起作用,因为http:\localhost\includes\submit.inc.php 不存在。 submit.inc.php 是 AJAX 用来将表单数据发送回服务器的文件。

那么,我是否应该首先担心 PHP 文件分离,如果是,我如何在 IIS 中引用网站物理路径之外的文件?

谢谢。

【问题讨论】:

    标签: php iis iis-10


    【解决方案1】:

    您应该有位于根目录中的 PHP 文件(或者,如果您使用的是 Front Controller pattern,则为一个文件)。

    这些提供了浏览器和其他客户端可以向其发出请求的端点(即具有 URL)。

    从那里你可以使用require_once从根外部加载依赖项。


    将数据处理保留在根目录之外的主要目标是,如果 HTTP 服务器配置错误导致您的 PHP 文件以原始方式提供而不是使用 PHP 处理它们,则保护您的业务逻辑和安全凭证不被泄露。

    all 您的 PHP 保留在根目录之外并不能满足此要求。

    【讨论】:

    • 感谢昆汀,感谢您的帮助。这在 php config 中设置包含路径后有效。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-31
    • 1970-01-01
    • 1970-01-01
    • 2013-07-21
    • 1970-01-01
    • 2011-12-10
    相关资源
    最近更新 更多