在 www 下定义一个临时目录以上传文件


Define a temporary dir under www to upload files

我正在尝试将文件上传到 apache public_html 目录。好吧,我相信值得一提的是,我正在一个在具有一些域和子域的VPS上运行的虚拟托管环境中。

通常在我的 XAMPP 服务器上,我将文件加载到临时文件夹不会有任何问题,但在新服务器上,尝试上传时不可能出现错误。

我已经检查了超全局 $_FILES 并收到此错误:

array(1) { ["file"]=> array(5) { ["name"]=> string(9) "test.gif" ["type"]=> string(0) "" ["tmp_name"]=> string(0) "" ["error"]=> int(1) ["size"]=> int(0) } }

我尝试使用 get_init('/tmp') 在服务器上设置一个 tmp 文件夹,但没有成功。

非常感谢您的关注。

显然,我无法设置新的临时文件夹来在我的VPS上上传文件。

我试过什么:

用 ini_set('upload_tmp_dir', '/tmp'); 设置一个新的临时文件夹,但没有任何成功!这是什么原因呢?答:未经许可。

因此,在使用 ini_set() 之前,请确保您有权使用它,否则它不会影响 php 引擎的行为。

无论如何,似乎如果你不设置临时文件夹,PHP 默认会使用/tmp。总之,如果您不设置新的临时文件夹,上传文件不会有问题。您可能还有其他一些与文件大小相关的问题。检查 php 信息file_uploads -> ON、upload_max_filesize、max_file_uploads,您可以在 upload_tmp_dir 处设置一个新的临时文件夹,但肯定不会有问题。

如果仍然无法上传文件,则可能是库依赖项存在一些问题。我的建议是确保您使用的所有功能都安装在服务器上,例如GD库,特别是当您尝试操作图像时。

您可以通过创建一个扩展名为 PHP 的新文件并在 PHP 标签之间使用该函数来检查 PHP 信息:phpinfo();

注意:您可以在 php.ini 或使用 ini_set() 函数进行上述所有更改。

我的服务器问题是GD库!!

这就是我的十美分贡献。我希望它能帮助某人:)