2011-01-07 9 views
9

Uso uploadify para subir archivos a mi sitio web.HTTP Error 302 usando uploadify

Funciona con una empresa de alojamiento web. Y no con otra compañía (sweb.ru).

de error es: Error HTTP: 302.

¿Alguien sabe cómo resolver este problema. Gracias.

+1

'302' es un código de estado de redireccionamiento, por lo que probablemente haya una redirección en algún lugar a lo largo de la línea.Es imposible decir dónde sin ver algún código. ¿Tal vez hay una redirección en algún lugar de los archivos '.htaccess'? –

+0

php_flag magic_quotes_gpc 0 php_flag magic_quotes_runtime 0 - in .htaccess –

Respuesta

20

Para cualquier persona que tenga este problema con Uploadify y un Marco de PHP (por ejemplo, CodeIgniter, CakePHP, Kohana, Yii, etc.):

flash no pasará por su información de sesión PHP existente, por lo que si está recibiendo el error 302 es probable que su aplicación devuelva la URL de inicio de sesión al reproductor Flash. Para resolver este problema, puede incluir la información de la sesión en scriptData y administrarla manualmente en su aplicación.

+1

¿Qué información de sesión necesita ser administrada si la pasa a través de * scriptData *? – Josh

+1

Depende de sus necesidades, pero podría ser suficiente pasar la ID de sesión y hacer que su destino cargue la sesión de esa manera. Aprecio que no es una buena práctica que la sesión aparezca en la página como un parámetro flash, pero en este caso es definitivamente la forma más fácil de integrar Uploadify en una aplicación que requiere autenticación. – plasmid87

+0

Aquí hay una descripción rápida sobre cómo obtener Uploadify para jugar muy bien con las sesiones de Kohana: http://www.serializethis.com/using-uploadify-and-kohana-without-http-error-302/ –

1

Como dije, 302 es un código de estado de redireccionamiento, por lo que es probable que haya una redirección en algún lugar a lo largo de la línea.

Es posible que tenga que preguntar a la empresa de alojamiento. Mi primera sospecha sería que estás publicando en un dominio que tiene el reenvío activado, p. domain.com =>www.domain.com.

+0

Estoy seguro de que Pekka tiene razón. intente capturar el tráfico web real con encabezados http activos en Firefox (la mayoría de las otras herramientas no verán el tráfico de carga de archivos) y verifique los encabezados de respuesta. – regilero

+0

Solo una nota en los encabezados http en vivo ... una gran herramienta, pero no capturará la salida de uploadify ya que la publicación está oculta dentro del cargador swf y no está expuesta a través de firefox. –

3

problema se resolvió mediante la adición de "SecFilterEngine Off" en .htaccess

+1

Esto es para Apache 1.x, no 2.x FYI – 472084

3

Recuerde que puede que tenga que detener la redirección. Estoy usando cakephp. Para detener el inicio de la autenticación cuando se llama al método uploadify/ajax, debe agregar lo siguiente al controlador.

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

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

"admin_attach" es el método que se llama uploadify en mi vista.

$(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); 
       } 
    }); 
}); 
+0

Estaba haciendo lo mismo pero es no está bien. Pude hacer que funcionara sin dar acceso forzado al método de carga ... –

0

Prueba esto en el principio de la entrada-script:

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

El componente de la sesión será entonces leer la correcta identificación de la sesión de la cookie como de costumbre.

Tengo este foro de Yu-marco

0

acaba de trabajar en un proyecto que tenía este problema. Tenía una imagen de perfil que quería actualizar, pero seguí recibiendo este error en Firefox. Pronto me di cuenta de que las imágenes originales que se cargaban intentaban sobrescribir se cargaron a través de FTP como un usuario diferente del usuario del servicio web público. Incluso cuando los permisos se establecieron en 777, ese error 302 continuó ocurriendo. Eliminé las imágenes a través de FTP y dejé que el usuario de la web subiera las nuevas. Luego pude sobrescribir las imágenes, cancelando el error 302 que estaba recibiendo.

Cuestiones relacionadas