我将尝试不成为“帮助吸血鬼”,正如您在github上引用的文章所述。 jQuery fileuploader非常漂亮,我想使用它。
您的上传器UI似乎可以正常工作,但将文件写入实际服务器的后端部分仍然会给我一个错误。环顾支持论坛,Stack Overflow以及许多其他领域,我找不到解决这个非常常见的问题。
服务器错误日志中的整个错误如下:
尝试提供目录:/var/www/vhosts/md1network.com/httpdocs/user/profile/my-images/files/,referer:http://md1network.com/user/profile/my-images/
我已经确保我的上传目录是可写的,已将权限设置为777。
以下是网页的屏幕截图和控制台中的错误:
我正在寻找可以采取的任何故障排除步骤。
我暂时从源代码中删除了页面保护,以便ANYBODY可以尝试解决我的错误:
这是链接: http://md1network.com/user/profile/my-images/
感谢。 瑞克
答案 0 :(得分:2)
我刚刚意识到的一个关键因素是配置的部分。
在main.js文件中,url的部分实际上是php脚本index.php所在的位置。该目录中应该只有文件 - index.php和UploadHandler.php。
如果文件目录不存在,脚本将自动创建文件目录,因此应该在php目录中启用执行权限和写入权限,以便可以创建文件目录。
main.js
// Initialize the jQuery File Upload widget:
$('#fileupload').fileupload({
// Uncomment the following to send cross-domain cookies:
//xhrFields: {withCredentials: true},
url: 'php/'
});
UploadHandler.php
$this->options = array(
'script_url' => $this->get_full_url().'/',
'upload_dir' => dirname($this->get_server_var('SCRIPT_FILENAME')).'/files/',
'upload_url' => $this->get_full_url().'/files/',
答案 1 :(得分:0)
我昨天让上传程序工作后,我发现了Error File Not Found问题。事实证明,如果您禁用下面的脚本并使用开箱即用的代码,它将忽略您设置的任何选项并尝试上传到domain.com/your-path-/server/php
<!-- Bootstrap JS is not required, but included for the responsive demo navigation -->
<script src="//netdna.bootstrapcdn.com/bootstrap/3.2.0/js/bootstrap.min.js"></script>
答案 2 :(得分:0)
我有相同的行为,我发现“upload”文件夹从我的根文件夹中获取htaccess规则,我设置了我需要的特定规则。
所以我需要以某种方式重置整个上传目录中的规则。我在“upload”文件夹中创建了一个新的.htaccess文件,其中包含以下内容:
上的RewriteEngine
<IfModule mod_rewrite.c>
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
这使它立即起作用!