Mam aplikację PHP (PHP 5.3.2) działającą na serwerze Apache (2.2.14) na serwerze Linux. Więcej niż raz w swojej historii użytkownik zobaczył w swoich przeglądarkach następujący komunikat: "Żądaj zbyt dużej jednostki". Pierwsze wyszukiwanie w Google sugerowało, że dzieje się tak, gdy przesłany plik jest za duży lub gdy ciasteczka są za duże. Ale nie dzieje się to podczas przesyłania plików, tylko przy logowaniu i zawsze na stronie logowania. Użytkownik wprowadza tę stronę za pomocą zwykłego formularza POST na stronie. Pliki cookie zawierają tylko identyfikator sesji.Apache, PHP Niepoprawna długość zawartości
Co więcej, apache rejestruje "Nieprawidłowa długość treści". Jest to rejestrowane przed wykonaniem któregokolwiek z moich kodów. $ _POST jest pusty, mimo że powinien zawierać pewne dane. Kiedy dodaje się następujący wiersz:
error_log("Content-Length: ".$_SERVER['CONTENT_LENGTH']);
mówi
Content-Length: 32, 32
, który wydaje się być rzeczywiście nieważne. Zmiana przeglądarki lub resetowanie komputera użytkownika wydaje się nie pomagać. Wszystko zaczęło działać następnego dnia.
Gdzie może leżeć problem? Czy jest to coś z Apache, PHP, ustawienia sieciowe użytkownika? Jeśli potrzebuję dodać więcej informacji, daj mi znać.
Może [ta odpowiedź] (http://stackoverflow.com/questions/1361451/get-size-post-request-in-php#3259068) może pomóc. – Wh1T3h4Ck5
Próbowałem niektóre z tych opcji, ale bez wyników. Na przykład strlen (file_get_contents ('php: // input')) to 0. – PWojnar
Spróbuj: 'strlen (file_get_contents ('php: // stdin'))' zamiast – Dale