1

我正在尝试调整上传脚本以适应 000webhost。我不断收到有关目标文件夹不存在的错误。这就是我所拥有的:

define('DESTINATION_FOLDER','/uploads/');

我也试过

/public_html/uploads/

/subdomain/domain/com/uploads/

在示例中,我看到人们使用 /www/,但我不知道它在哪里。

在这种情况下使用的正确语法是什么?

4

1 回答 1

4

尝试这个:

define('DESTINATION_FOLDER',$_SERVER['DOCUMENT_ROOT'].'/uploads/');

如果平台独立性对您很重要,请考虑使用 PHP 常量 DIRECTORY_SEPARATOR:

define('DESTINATION_FOLDER',$_SERVER['DOCUMENT_ROOT'].DIRECTORY_SEPARATOR.
                            'uploads'.DIRECTORY_SEPARATOR);

http://php.net/manual/en/dir.constants.php

编辑
在文档根目录下存储上传可能存在安全风险。除非您希望 Web 服务器可以直接访问这些文件,否则您应该考虑将它们存储在您的 Web 空间内的文档根目录之外。如果您在主机的“public_html”文件夹旁边创建了一个名为“uploads”的文件夹,您可以像这样访问它:

define('DESTINATION_FOLDER',$_SERVER['DOCUMENT_ROOT'].DIRECTORY_SEPARATOR.
                            '..'.DIRECTORY_SEPARATOR. // (up one level)
                            'uploads'.DIRECTORY_SEPARATOR);

/或者直接指定文件夹的绝对路径(以 开头)。

于 2012-10-04T05:13:06.933 回答