繁体   English   中英

如何在主域的子域中包含一个php文件

[英]How to include a php file in subdomain from main domain

我的服务器中有两个文件夹:

--MainDomain
  -header.php
  -index.php
  -footer.php
--Subdomain
  -index.php

现在我想在子域中的index.php包含来自主域的header.php

通过使用include函数,我得到了错误

无法打开流:/home/content/xx/xxx/xxxx/xxx/ 中没有这样的文件或目录

我知道当给定的提到的路径上不存在文件时会发生此错误,但是如何将文件从主域包含到子域? 先感谢您

我知道这个问题是八个月前提出的,但我刚刚遇到了同样的问题并解决了它。 希望这会帮助将来偶然发现同样事情的人。

  • 例如,假设您有两个子域:carrot.cake.com 和 Chocolate.cake.com
  • 您在胡萝卜子域中有一个文件:carrot.cake.com/scripts/login.php
  • 你在巧克力子域中有一个文件:chocolate.cake.com/index.php
  • 您想在文件“index.php”中包含文件“login.php”。

重要的部分是这是可能的,但只有当您将这两个域的文件都存储在一个服务器文件系统上时才有可能。

将以下代码添加到您的 index.php 文件中:

    <?php 
echo '<br>'.$_SERVER['DOCUMENT_ROOT'].'<br>';
    ?>

然后在浏览器中加载您的 index.php 文件。 它将显示您的实际目录文件夹是什么。 例如,当我这样做时,它告诉我我的文件系统看起来像:

/home3/cake/public_html/chocolate_domain

你的将与我的不同,所以你自己测试一下那个 php 代码片段。 然后立即删除该代码。 它仅用于测试目的。 但是现在您知道如何实际访问所有域的所有文件夹。 这意味着你的 index.php 文件在,例如,

/home3/cake/public_html/chocolate_domain/index.php

并且您的 login.php 文件在,例如,

/home3/cake/public_html/carrot_domain/scripts/login.php

现在,为了最终结果! 如果您想在“index.php”中包含“login.php”,那么您应该将以下代码放入您的“index.php”文件中:

    <?php 
include("/home3/cake/public_html/carrot_domain/scripts/login.php"); 
    ?>

请再次记住,YOU 的实际路径是不同的,所以使用文档根目录的 echo 测试一下,就像我之前说的一样~

祝你好运~

这是一个整洁的方法来做到这一点。

来自子域的包含:

include( $_SERVER['DOCUMENT_ROOT'] . "/../exampledomain.com/filetoinclude.php" ); 

这将获取文件的整个路径,然后无论您在哪个子域中,它都会跳转到其上方的文件夹并调用“exampledomain.com”域。 这会向看到该文件的任何人显示您的文件夹层次结构。

您还可以将此包含到子域中:

include( $_SERVER['DOCUMENT_ROOT'] . "/../sub.exampledomain.com/filetoinclude.php" ); 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM