Strona 1 z 1
Apache2 - brak obsługi niektórych błędów
: 09 stycznia 2012, 21:42
autor: mateuszms
W httpd.conf wprowadziłem własne strony błędów, np.
Plik error.php
Kod: Zaznacz cały
<?php
if($error==''){
$error=$_GET['err'];}
header("HTTP/1.1 ".$error);
?>
<html>
<head>
<title>DOMENA1.pl</title>
</head>
<body bgcolor="black">
<table width="100%" height="100%" align="center" valign="middle">
<TR>
<TD width="100%" height="100%" align="center" valign="middle">
<?php
echo "<img src='http://domena1.pl/error/pics/".$error.".jpg'>";
?>
</td>
</tr>
</table>
</body>
</html>
Dla błędów, np. 400, 403 i 404 działa poprawnie. Natomiast błąd 414 już nie działa bo wyświetlana jest standardowa strona serwera apache.
Tak samo dla błędów 50x, zamiast błędu mojego serwera, np. przeglądarka Chrome wyświetla swoje strony błędów, a Firefox (Aurora) nic pusta strona.
Czy ktoś jakiś pomysł co zrobiłem źle lub jak to naprawić?
: 09 stycznia 2012, 22:25
autor: Bastian
Wklej cały konfig apache, bo tak to ciężko stwierdzić..
: 09 stycznia 2012, 22:29
autor: mateuszms
httpd.conf
Kod: Zaznacz cały
ServerName domena1.pl
Alias /error/ "/etc/apache2/error/"
ErrorDocument 100 /error/error.php?err=100
ErrorDocument 200 /error/error.php?err=200
ErrorDocument 206 /error/error.php?err=206
ErrorDocument 207 /error/error.php?err=207
ErrorDocument 300 /error/error.php?err=300
ErrorDocument 301 /error/error.php?err=301
ErrorDocument 302 /error/error.php?err=302
ErrorDocument 303 /error/error.php?err=303
ErrorDocument 307 /error/error.php?err=307
ErrorDocument 401 /error/error.php?err=401
ErrorDocument 402 /error/error.php?err=402
ErrorDocument 405 /error/error.php?err=405
ErrorDocument 406 /error/error.php?err=406
ErrorDocument 408 /error/error.php?err=408
ErrorDocument 409 /error/error.php?err=409
ErrorDocument 410 /error/error.php?err=410
ErrorDocument 413 /error/error.php?err=413
ErrorDocument 414 /error/error.php?err=414
ErrorDocument 416 /error/error.php?err=416
ErrorDocument 417 /error/error.php?err=417
ErrorDocument 418 /error/error.php?err=418
ErrorDocument 422 /error/error.php?err=422
ErrorDocument 423 /error/error.php?err=423
ErrorDocument 424 /error/error.php?err=424
ErrorDocument 426 /error/error.php?err=426
ErrorDocument 500 /error/error.php?err=500
ErrorDocument 502 /error/error.php?err=502
ErrorDocument 507 /error/error.php?err=507
ErrorDocument 508 /error/error.php?err=508
ErrorDocument 403 /error/error.php?err=403
ErrorDocument 404 /error/error.php?err=404
ErrorDocument 400 /error/error.php?err=400
ErrorDocument 201 /error/error.php?err=201
ErrorDocument 202 /error/error.php?err=202
ErrorDocument 203 /error/error.php?err=203
ErrorDocument 204 /error/error.php?err=204
ErrorDocument 304 /error/error.php?err=304
ErrorDocument 305 /error/error.php?err=305
ErrorDocument 411 /error/error.php?err=411
ErrorDocument 425 /error/error.php?err=425
ErrorDocument 501 /error/error.php?err=501
ErrorDocument 503 /error/error.php?err=503
ErrorDocument 504 /error/error.php?err=504
ErrorDocument 506 /error/error.php?err=506
...
LimitRequestLine 100
To '...' to metody <Directory>, które nic tu nie wnoszą...
: 10 stycznia 2012, 21:45
autor: Bastian
Nie no, w to że masz dobrze pokonfigurowane parametry obsługi błędów to ja wierze. Konfig chciałem, po to aby znaleźć przyczynę gdzie indziej. Dla przykładu u mnie problem z wyświetlaniem ręcznie zdefiniowanych komunikatów o błędach był moduł translacji komunikatów na lokalne języki, który nadpisywał moje ustawienia. Być może u Ciebie też, z któryś dodatków nadpisuje dla tych konkretnych numerów.
: 10 stycznia 2012, 21:48
autor: mateuszms
A gdzie znaleźć ustawienia tego modułu translacji? W apache.conf? Odpalilem sobie virtualną maszynę i tam mam ten sam "błąd" nie wyświetlania własnej strony błędu więc będę w stanie sprawdzić czy podane rozwiązanie zadziała.
: 10 stycznia 2012, 21:54
autor: Bastian
Nie wiem jak w Debianie, w Arch to http-multilang-errordoc.conf , z tym, że to nie musi być dokładnie to, a tylko przykład, że coś może nadpisywać Twoje ustawienia.
: 10 stycznia 2012, 22:03
autor: mateuszms
To chyba nie to. W zasadzie to usunąłem całą zawartość httpd-multilang-errordoc.conf oraz pliku .var z błędem 414 i dalej pojawia mi się ta sama strona z błędem serwera apache.