2

我正在尝试在 PHP 中创建一个脚本,该脚本从域名目录上方的目录中读取并包含所有文件。

例如:

我的域名是 example.com,位于 /var/www/html/example.com/,我希望 /var/www/html/example.com/file.php 能够读取:

  • /var/www/html/videos/video1/ 其中包含 index.html 和文件夹:
    • /var/www/html/videos/video1/images/ 和 /var/www/html/videos/video1/scripts/

例如 www.example.com/file.php?dir=/var/www/html/videos/video1/index.html

如果我使用 include (/var/www/html/videos/video1/index.html) 它只会调用 html 文件,这是完美的。但是,图像文件夹和脚本文件夹中的所有文件都无法加载。

我不想单独复制或调用每个文件。我希望能够只需要调用 index.html 然后让浏览器认为它在该目录中并自动读取其中的任何文件。

我知道这是可行的,因为 Moodle 使用这种方法(在 file.php 中)通过将学习文件存储在公用文件夹上一层的 moodledata 文件夹中来保护学习文件。我看过但无法理解它,我已经搜索了互联网以实现我上面解释的方法但没有任何成功。

我想这样做的原因是避免在服务器上为托管在同一服务器上的其他站点提供重复的视频文件。非常感谢您花时间提供帮助。

4

2 回答 2

0

看看是否可以直接在浏览器中加载图像,如果可以,则可能是您的代码有问题,如果不能,则可能是权限问题。

于 2012-12-31T12:38:03.983 回答
0
$dir = realpath(dirname(__FILE__)."/../");

这将是您要查找的目录。需要与此相关的文件。

要输出不同的文件,请查看直接输出到缓冲区的readfile,或者使用可以保存在变量中的file_get_contents 。

于 2012-12-30T13:11:39.560 回答