gpt4 book ai didi

PHP 使用外部磁盘驱动器下载文件

转载 作者:行者123 更新时间:2023-12-04 19:42:19 25 4
gpt4 key购买 nike

我在将外部存储链接到 PHP 主目录时遇到问题。

我在 Linux Centos 6 上使用 Litespeed Web 服务器,并且在我的用户主目录中一切正常。

但我想在我的 2 个硬盘驱动器之间创建一个负载平衡器,以便在高峰时段提供更好的服务。

我在 httpd.conf 中使用下面的配置来创建别名,当我尝试直接下载文件时,它运行良好,如 https://example.com/cdn/file.mp4

Alias /cdn/ "/cdn/files/"
<Directory "/cdn/files">
Options Indexes MultiViews
AllowOverride All
Require all granted
Allow from all
</Directory>

但是如果我尝试在 php 脚本中使用路径,例如检查 文件存在 好像我做不到。

我在外部目录中设置了我的主用户和组。

任何想法 ?!

更新 1:
我尝试了从主目录到外部目录的符号链接(symbolic link),但仍然没有结果。

更新 2:
我的简单 php 代码:
<?php 
if(file_exists('/cdn/files/file.mp4') || file_exists('/cdn/file.mp4') || file_exists('./cdn/file.mp4') || file_exists('./~cdn/file.mp4')){
echo "yes";
}else{
echo "no";
}
?>

结果:没有

最佳答案

问题出在 php.ini open_basedir 值中。我必须将完整路径附加到 open_basedir 值中的新磁盘。

还在 httpd.conf 文件中添加 open_basedir 值,如下所示:

<Directory "/home/user/public_html">
php_admin_value open_basedir /home/user/public_html/:/cdn/files
</Directory>

<VirtualHost myip:80>
<Directory "/home/user/public_html">
php_admin_value open_basedir /home/user/public_html/:/cdn/files
</Directory>
</VirtualHost>

<VirtualHost myip:443>
<Directory "/home/user/public_html">
php_admin_value open_basedir /home/user/public_html/:/cdn/files
</Directory>
</VirtualHost>

我希望这对某人有用:)

关于PHP 使用外部磁盘驱动器下载文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52700231/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com