使用uploadify的HTTP错误302

时间:2011-01-07 10:49:43

标签: php uploadify http-error

我使用uploadify将文件上传到我的网站。

它与一家托管公司合作。并不与其他公司(sweb.ru)。

错误是:HTTP错误:302。

有人知道如何解决此问题。感谢。

7 个答案:

答案 0 :(得分:20)

对于任何有上传和PHP框架问题的人(例如CodeIgniter,CakePHP,Kohana,Yii等):

Flash不会传递您现有的PHP会话信息,因此如果您收到302错误,您的应用程序可能会将登录URL返回给Flash播放器。要解决此问题,您可以在 scriptData 中包含会话信息,并在应用程序中手动管理。

答案 1 :(得分:3)

通过在htaccess中添加“SecFilterEngine Off”来解决问题

答案 2 :(得分:3)

请记住,您可能必须停止重定向。 我正在使用cakephp。 要在调用uploadify / ajax方法时停止启动auth,您必须将以下内容添加到控制器。

  public function beforeFilter()
    {
        parent::beforeFilter();

        $this->Auth->allowedActions = array('admin_attach');
    }

“admin_attach”是我在视图中由uploadify调用的方法。

$(document).ready(function() {
  $('.image-attach').uploadify({
    'uploader'  : '/uploadify/uploadify.swf',
    'script'    : '/admin/featureds/featured_resources/attach/',
    'cancelImg' : '/uploadify/cancel.png',
    'buttonText' : 'Select image',
    'fileDataName' : 'uploadify',
    'auto'      : true,
   onComplete   : function(event, id, fileObj, resp, data){
                    alert(resp);
                 }
    });
});

答案 3 :(得分:1)

如上所述,302是一个重定向状态代码,因此可能会在该行的某处发生重定向。

您可能需要询问托管公司。我的第一个怀疑是你发布到一个已经激活转发的域名,例如domain.com => www.domain.com

答案 4 :(得分:0)

在入门脚本的开头尝试:

if (isset($_POST['PHPSESSID']))
{ 
$_COOKIE['PHPSESSID'] = $_POST['PHPSESSID'];
}

会话组件将照常从cookie中读取正确的会话ID。

我从Yii框架论坛获得了这个

答案 5 :(得分:0)

刚刚处理过这个问题的项目。我有一个我想要更新的个人资料图片,但在Firefox中继续收到此错误。我很快意识到uploadify试图覆盖的原始图像是通过FTP上传的,与公共Web服务用户不同。即使权限设置为777,也会继续发生302错误。 我通过FTP删除了图像,让网络用户上传新的图像。然后我能够覆盖图像,取消了我收到的302错误。

答案 6 :(得分:0)

对于那些使用 Kohana PHP框架的人来说,他们正在努力让 Uploadify 与会话一起工作,这里有一篇关于如何让它发挥得很好的快速写作:

http://www.serializethis.com/using-uploadify-and-kohana-without-http-error-302/