为什么这项工作:PHP包括帮助
<?php include "includes/top_nav.php"; ?>
?为什么这不是为我工作吗?作为所述in the documentation该服务器
http://www.php.net/manual/en/filesystem.configuration.php#ini.allow-url-fopen
为什么这项工作:PHP包括帮助
<?php include "includes/top_nav.php"; ?>
?为什么这不是为我工作吗?作为所述in the documentation该服务器
http://www.php.net/manual/en/filesystem.configuration.php#ini.allow-url-fopen
我看到两个可能的原因。
首先,您的服务器可能未配置为允许URL文件访问。在这种情况下,错误将显示为“在服务器配置中禁用URL文件访问”
如果包含实际工作,但不包括您的期望,但这是一个完整的其他故事。在这种情况下,理解的关键是如何处理这样的请求。在执行你共享的脚本时,你的服务器会执行一个HTTP请求(对它自己)并要求输出top_nav.php
。这是对服务器的一个全新的请求,所以关于请求的原始请求的细节不再起作用。
该请求将来自不同的IP地址(即您的服务器的地址,而不是原始客户端)的不同用户(即Apache),不同的Cookie,不同的$_GET
数据和不包含$_POST
数据。
因此,如果top_nav.php
在渲染时以任何方式检查服务器变量,环境变量,PHP变量或任何其他运行时状态,则将失败。
你说得对,allow_url_include被设置为Off。 – oshirowanen 2010-11-05 16:36:56
@oshirowanen你最好保持关闭,愚蠢 – 2010-11-05 18:59:00
为什么要保持关闭? – oshirowanen 2010-11-11 20:21:44
URL fopen封装可能是无效的,即使它的启用,它不与Windows上工作。
您需要启用URL fopen wrappers上
<?php include "http://localhost/includes/top_nav.php"; ?>
如果“URL fopen封装”在 PHP(他们是在默认 配置)启用后,您可以指定 文件使用URL包括(通过 HTTP或其他支持的包装 - 请参阅 支持的协议/包装列表 获取协议列表)而不是 本地路径名。
你的服务器上的URL fopen包装的价值是什么?
您忘记了添加代码。 – zzzzBov 2010-11-05 16:27:43
你忘了添加错误信息。 – 2010-11-05 16:28:18
没有错误消息,第一个示例包含我期望它包含的html,第二个示例不包含我期望它包含的html。 – oshirowanen 2010-11-05 16:29:12