403 proibido ao enviar uma solicitação POST com dados de imagem via aplicativo para iPhone

6

Estou criando um aplicativo para iOS que permite aos usuários enviar dados de imagem / texto para meu servidor da web por meio de uma solicitação POST. Estou enviando com êxito POSTs para o servidor quando os dados de imagem não estão incluídos na solicitação. Toda vez que POST eu com dados de imagem, o servidor retorna um 403 forbidden . Eu tentei adicionar o seguinte ao arquivo .htaccess no diretório do script sem sorte:

Options +Indexes FollowSymLinks +ExecCGI
Order allow,deny
Allow from all

Navegadores da Web e dispositivos Android podem POST com dados de imagem com êxito para o script, o único dispositivo que não pode ser o iPhone.

POSTAR com dados para outros provedores de hospedagem funciona como esperado - é apenas esse host (ipowerweb.com).

Percebi que, quando eu tento POST com dados para qualquer script no servidor, ele retorna um 403 forbidden . Outra nota: Eu posso postar com sucesso em outro servidor hospedado pelo ipowerweb, mas o meu parece não conseguir lidar com isso.

Meu host tentou resolver o problema, mas não conseguiu, e eles o marcaram como "resolvido", portanto, não há mais ajuda deles. Eu gostaria de manter este anfitrião como se mover seria uma dor - eu vou mudar de hospedeiro como último recurso, então por favor me ajude!

Por que estou recebendo este erro 403 proibido apenas quando envio dados através do meu aplicativo para iPhone?

Como posso resolver o problema para que POST possa obter dados POST com êxito?

Qualquer conselho sobre o que eu posso fazer seria muito apreciado.

edit: como solicitação, aqui estão os cabeçalhos de resposta:

{
    Connection = close;
    "Content-Length" = 217;
    "Content-Type" = "text/html; charset=iso-8859-1";
    Date = "Wed, 12 Jan 2011 19:11:19 GMT";
    Server = "Apache/2";
}

edit: como pedido, aqui estão os cabeçalhos da solicitação (oops):

{
    "Accept-Encoding" = gzip;
    "Content-Length" = 5781;
    "Content-Type" = "multipart/form-data; charset=utf-8; boundary=0xKhTmLbOuNdArY";
    "User-Agent" = "YeahIAteThat 1.0 (iPhone; iPhone OS 4.2.1; en_US)";
}
    
por binnyb 12.01.2011 / 20:02

3 respostas

1

O que acontece se, como teste, você alterar a primeira parte do cabeçalho do User-Agent de "YeahIAteThat 1.0" para algo típico como "Mozilla / 5.0"?

    
por 15.01.2011 / 21:30
0

isso pode ser porque mod_security instalado e está rejeitando a operação POST (por causa de uma regra?)

    
por 14.01.2011 / 22:13
0

Pode ser que você esteja postando em um endereço que está retornando um redirecionamento? Por exemplo, se você tivesse o link , o servidor redirecionaria seu cliente para link e a carga útil da solicitação de postagem normalmente não é "reenviada" para o novo destino ...

    
por 20.01.2011 / 11:01