【问题标题】:jQuery fileuploader bluimp Error Not FoundjQuery文件上传blueimp错误未找到
【发布时间】:2014-02-28 20:45:40
【问题描述】:

我会尽量不成为“帮助吸血鬼”,如您在 github 上引用的文章中所述。 jQuery 文件上传器非常漂亮,我想使用它。

您的上传器 UI 似乎可以正常工作,但将文件写入实际服务器的后端部分一直给我一个错误。环顾支持论坛、Stack Overflow 和许多其他领域,我找不到解决和解决这个非常常见的问题。

我的服务器错误日志中的整个错误如下:

尝试服务目录:/var/www/vhosts/md1network.com/httpdocs/user/profile/my-images/files/,引用者:http://md1network.com/user/profile/my-images/

我已经确定我的上传目录是可写的,权限设置为 777。

这是网页截图和控制台中的错误:

我正在寻找可以采取的任何故障排除步骤。

我暂时从我的来源中删除了页面保护,以便任何人都可以尝试解决我的错误:

这是链接: http://md1network.com/user/profile/my-images/

谢谢。 瑞克

【问题讨论】:

  • 看来此目录无法通过网络浏览器访问md1network.com/user/profile/my-images/files
  • 脚本工作正常...正在加载图片,但无法将图片放在所选目录上...尝试使用另一个上传目录...或检查 apache 用户是否具有权限上传目录...或给我 ssh 访问服务器的权限,我可以解决问题 xD(开个玩笑)
  • 上传目录的权限设置为777,不解决权限问题吗?该组是 psacln [505],所有者是 admin_md1 [10003],这几乎是 Plesk 的默认安装。
  • 当我尝试通过 webbrowser 进入上传目录时,它给了我一个 download.html 文件而不是索引目录 web 视图
  • 是的。那里没有索引。该目录中没有任何文件。该脚本应将图像上传到该目录。请查看脚本的文档:github.com/blueimp/jQuery-File-Upload/wiki

标签: php jquery upload


【解决方案1】:

我刚刚意识到的一个关键元素是配置的各个部分。

在 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/'
});

上传处理程序.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/',

【讨论】:

    【解决方案2】:

    昨天让上传器工作后,我刚刚遇到了错误文件未找到问题。事实证明,如果您禁用下面的脚本并使用开箱即用的代码,它会忽略您设置的任何选项并尝试上传到 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>
    

    【讨论】:

      【解决方案3】:

      我得到了同样的行为,我发现“上传”文件夹正在从我的根文件夹获取 htaccess 规则,我在其中设置了我需要的特定规则。

      所以我需要以某种方式重置整个上传目录中的规则。我在“上传”文件夹中创建了一个新的 .htaccess 文件,其中包含以下内容:

      重写引擎开启

      <IfModule mod_rewrite.c>
      RewriteBase /
      RewriteCond %{REQUEST_FILENAME} !-f
      RewriteCond %{REQUEST_FILENAME} !-d
      RewriteRule . /index.php [L]
      </IfModule>
      

      这使它立即工作!

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2014-06-18
        • 2018-05-18
        • 1970-01-01
        • 2013-03-13
        • 2013-04-29
        • 2015-09-29
        • 1970-01-01
        相关资源
        最近更新 更多