所以我设置了这种文件。 /cloud/
和/embed/
是两个不同的子域。
www
-cloud
--config.php
--files
---formSubmit.php
-embed
--index.php
/embed/index.php 中的我有以下代码:
include("/www/cloud/files/formSubmit.php");
在 /cloud/files/formSubmit.php 中我有以下代码:
include("../config.php");
如果我在cloud.website.com上,并且我转到 formSubmit.php ,一切正常,包含配置文件。
但是,如果我在embed.website.com上并且转到 index.php ,则会收到错误消息,指出找不到config.php。
有没有人知道我需要做什么才能从任一位置包含我的formSubmit.php并包含我的config.php?
答案 0 :(得分:1)
在这种情况下,似乎您使用相对路径是有效的,而绝对路径则不然。这是否意味着/www/cloud/files/
的绝对路径不正确,我不知道。在我的代码中,我倾向于尝试相对尽可能地引用文件,如下所示:
// In embed/index.php
include_once dirname(dirname(__FILE__)) . '/cloud/files/formSubmit.php';
这样做是获取当前正在执行的文件的目录,然后获取它的父目录,即www
,然后沿着路径返回到我需要的文件。< / p>
在访问文件服务器端时,子域名不应该有所区别(只要文件托管在相同的服务器上)。