400: Неверный запрос!

#php #linux #apache #http #xml-rpc

#php #linux #apache #http #xml-rpc

Вопрос:

Я разрабатываю приложение, которое использует службу xmlrpc для обмена данными. Я разработал серверную часть для Windows с использованием WAMP, и она работает довольно хорошо. Тем не менее, я решил реализовать серверную часть на Ubuntu. Итак, я начал загружать и устанавливать то, что необходимо (apt-get install lamp-server ^) и все, что с ним поставляется. Когда я попробовал это, это не сработало, и я получил эту ошибку: 400: неверный запрос. Сначала я подумал, что пришел с lamp-сервера и плохой конфигурации, поэтому я удалил все это и запустил заново все компоненты один за другим, но я все еще эта ошибка!

Я использую пакет xml_rpc от pear (http://pear.php.net/package/XML_RPC/redirected ). И, кажется, это работает, вот источник страницы, который выдает мне эту ошибку :

 ---SENT---
POST server5.php HTTP/1.0
User-Agent: PEAR XML_RPC
Host: localhost
Content-Type: text/xml
Content-Length: 309

<?xml version="1.0" encoding="UTF-8"?>
<methodCall>
<methodName>storeData</methodName>
<params>
<param>
<value><base64></base64></value>
</param>
<param>
<value><string>03-10-2010-16.55.23</string></value>
</param>
<param>
<value><string>popop</string></value>
</param>
</params>
</methodCall>

---END---

---RECEIVED---
HTTP/1.1 400 Bad Request
Date: Wed, 13 Apr 2011 14:31:33 GMT
Server: Apache/2.2.16 (Ubuntu) PHP/5.3.3-1ubuntu9.3 with Suhosin-Patch
Vary: Accept-Encoding
Content-Length: 226
Connection: close
Content-Type: text/html; charset=iso-8859-1

amp;<!DOCTYPE HTML PUBLIC amp;quot;-//IETF//DTD HTML 2.0//ENamp;quot;amp;>
amp;<htmlamp;>amp;<headamp;>
amp;<titleamp;>400 Bad Requestamp;</titleamp;>

amp;</headamp;>amp;<bodyamp;>
amp;<h1amp;>Bad Requestamp;</h1amp;>
amp;<pamp;>Your browser sent a request that this server could not understand.amp;<br /amp;>
amp;</pamp;>
amp;</bodyamp;>amp;</htmlamp;>

---END---
  

Код ошибки: 5 Причина ошибки: Не получил 200 OK с удаленного сервера. (HTTP/1.1 400 неверный запрос)

У вас есть какие-либо идеи, что могло вызвать эту ошибку? есть какие-нибудь советы или подсказки?

Заранее спасибо!

Ответ №1:

Сервер прав, запрос неверный

Ваш путь должен начинаться с /

 > POST /server5.php HTTP/1.0 User-Agent:
> PEAR XML_RPC Host: localhost
> Content-Type: text/xml Content-Length:
> 309