sonnenwelt
Themenersteller
Neuling (6 Beiträge)

individuelle Fehlerseite geht nicht??

am 27.09.2013, 09:28 Uhr eröffnete sonnenwelt folgenden Thread
.htaccess    3032 mal gelesen    9 Antwort(en).

Guten Morgen,
ich wollte eine individuelle Fehlerseite einbauen, wie seitenreport das gern hätte, aber das einbinden in die htaccess hab ich nicht hinbekommen. Kann mal bitte einer helfen??
MfG + Danke

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTP_HOST} ^(www.xxxxxxxxxxxxxxxx\.de) [NC]
RewriteRule ^(.*) xxxxxxxxxxxxxxx.de/$1 [R=301,L]
RewriteCond %{QUERY_STRING} ^$
RewriteRule ^(.*)index\.(php|html|htm) /$1 [L,R=301]
ErrorDocument 401 xxxxxxxxxxxxxxxxxxxxxxxxxxxx/fehler.html
ErrorDocument 403 xxxxxxxxxxxxxxxxxxxxxxxxxxxx/fehler.html
ErrorDocument 404 xxxxxxxxxxxxxxxxxxxxxxxxxxxx/fehler.html
ErrorDocument 500 xxxxxxxxxxxxxxxxxxxxxxxxxxxx/fehler.html
</IfModule>


KlausO
Avatar KlausO
Rentner
Guru (141 Beiträge)
am 27.09.2013, 09:55 Uhr schrieb KlausO

Hallo Sonnenwelt,

probier es einmal so:

RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\\.
RewriteRule ^(.*)$ www.%{HTTP_HOST}/$1 [R=301,QSA,L]
RewriteRule ^index\\.(html?|htm)$ %{HTTP_HOST} [R=301,QSA,L]

ErrorDocument 402 /402.htm
ErrorDocument 403 /403.htm
ErrorDocument 404 /404.htm


MfG KlausO


http://www.photospuren.de
Photographen + Ahnenforschung

zille
Werkzeugmacher
Beginner (39 Beiträge)
am 30.09.2013, 13:31 Uhr schrieb zille

Hallo Sonnenwelt,

Nachfolgende Zeile in .htaccees einfügen.
ErrorDocument 404 /error404.html
Undine Datei ertellen nmens error404.html; mit entsprechenden Inhalt z.b. "die von Ihnen aufgerufene Internetseite existiert nicht oder es ist nicht gestattet diese Seite aufzurufen.
Bitte überprüfen Sie als erstes die Schreibweise der Adresse.
Eine mögliche Fehlerursache ist ein Schreibfehler in der Internetadresse."


Ich kann freilich nicht sagen, ob es besser wird, wenn es anders wird. Aber soviel kann ich sagen: es muss anders werden, wenn es besser werden soll!
https://www.ferienhaus-ziller.de

zille
Werkzeugmacher
Beginner (39 Beiträge)
am 30.09.2013, 13:37 Uhr schrieb zille

zille schrieb:

Hallo Sonnenwelt,

Nachfolgende Zeile in .htacces einfügen.
ErrorDocument 404 /error404.html
Und eine Datei ertellen nmens error404.html; mit entsprechenden Inhalt z.b. "die von Ihnen aufgerufene Internetseite existiert nicht oder es ist nicht gestattet diese Seite aufzurufen.
Bitte überprüfen Sie als erstes die Schreibweise der Adresse.
Eine mögliche Fehlerursache ist ein Schreibfehler in der Internetadresse."


Ich kann freilich nicht sagen, ob es besser wird, wenn es anders wird. Aber soviel kann ich sagen: es muss anders werden, wenn es besser werden soll!
https://www.ferienhaus-ziller.de

kloeskes
Neuling (6 Beiträge)
am 26.11.2014, 08:50 Uhr schrieb kloeskes

Habe ein ähnliches Problem:

Gültige Fehlerseite fehlt 0% [info]
Individuelle Fehlerseite Weiterleitung 50% [info]


Meine .htacess:

AddType application/x-httpd-php53 .php
AddDefaultCharset utf-8
#php_flag magic_quotes_gpc Off

SetEnv APP_ENVIRONMENT online

RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\\. [NC]
RewriteRule ^(.*)$ www.%{HTTP_HOST}/$1 [R=301,NC,L]

<IfModule mod_rewrite.c>

#RewriteEngine On
#RewriteBase /kfzgutachter/
#RewriteBase /projects/kfzgutachter/
RewriteBase /

RewriteCond %{SCRIPT_FILENAME} !-f
RewriteCond %{SCRIPT_FILENAME} !-d

#RewriteRule /*\\.(css|js|php|php|gif|png|jpe?g)$ - [NC,L]
RewriteRule "^(.*)$" "index.php" [QSA,L]

</IfModule>
<IfModule !mod_rewrite.c>
ErrorDocument 404 /404.php
</IfModule>


<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/html text/xml text/css text/plain
AddOutputFilterByType DEFLATE image/svg+xml application/xhtml+xml application/xml
AddOutputFilterByType DEFLATE application/rdf+xml application/rss+xml application/atom+xml
AddOutputFilterByType DEFLATE text/javascript application/javascript application/x-javascript
AddOutputFilterByType DEFLATE application/x-font-ttf application/x-font-otf
AddOutputFilterByType DEFLATE font/truetype font/opentype
</IfModule>

# turns cache on
<IfModule mod_expires.c>
ExpiresActive On
ExpiresDefault "access plus 4 hours"
ExpiresByType application/javascript A900
ExpiresByType application/x-javascript A900
ExpiresByType text/javascript A900
ExpiresByType text/html A86400
ExpiresByType text/xml A86400
ExpiresByType text/css A86400
ExpiresByType text/plain A86400
ExpiresByType image/gif A86400
ExpiresByType image/jpg A86400
ExpiresByType image/jpeg A86400
ExpiresByType image/png A86400
ExpiresByType image/bmp A86400
ExpiresByType application/x-shockwave-flash A86400
</IfModule>
<ifmodule mod_headers.c>
<filesmatch "\\\\.(ico|jpe?g|png|gif|swf)$">
Header set Cache-Control "max-age=2592000, public"
</filesmatch>
<filesmatch "\\\\.(css)$">
Header set Cache-Control "max-age=604800, public"
</filesmatch>
<filesmatch "\\\\.(js)$">
Header set Cache-Control "max-age=216000, private"
</filesmatch>
<filesmatch "\\\\.(x?html?|php)$">
Header set Cache-Control "max-age=600, private, must-revalidate"
</filesmatch>


matthes
Avatar matthes
Foren Moderator
Evil Genius
Content Halbgott (973 Beiträge)
am 26.11.2014, 14:58 Uhr schrieb matthes

kloeskes schrieb:

RewriteCond %{SCRIPT_FILENAME} !-f
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteRule "^(.*)$" "index.php" [QSA,L]



Erster Fehler. Alles, was nicht existiert, wird auf die index.php umgeleitet. Also kann der Server gar keine korrekte Fehlerseite ausliefern, sofern die index.php Fehler nicht selber bearbeitet.

kloeskes schrieb:

<IfModule !mod_rewrite.c>
ErrorDocument 404 /404.php
</IfModule>


Zweiter Fehler. Die Anweisung lautet: "Wenn das Modul mod_rewrite nicht existiert, soll 404.php die Fehlerseite für 404-Fehler sein."
Ich nehme aber stark an, dass das Modul existiert, also greift die Direktive gar nicht.


Make Seitenreport great again!

kloeskes
Neuling (6 Beiträge)
am 26.11.2014, 15:23 Uhr schrieb kloeskes

Fehler wurden korrigiert. jetzt habe ich folgende Konstallation:

Gültige Fehlerseite vorhanden 100%
Individuelle Fehlerseite fehlt 0%

Meine .htaccess:


SetEnv APP_ENVIRONMENT online

RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\\. [NC]
RewriteRule ^(.*)$ www.%{HTTP_HOST}/$1 [R=301,NC,L]

<IfModule mod_rewrite.c>

#RewriteEngine On
#RewriteBase /kfzgutachter/
#RewriteBase /projects/kfzgutachter/
RewriteBase /

RewriteCond %{SCRIPT_FILENAME} !-f
RewriteCond %{SCRIPT_FILENAME} !-d

#RewriteRule /*\\.(css|js|php|php|gif|png|jpe?g)$ - [NC,L]
#RewriteRule "^(.*)$" "index.php" [QSA,L]
ErrorDocument 404 /404.php

</IfModule>


<IfModule !mod_rewrite.c>

</IfModule>


<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/html text/xml text/css text/plain
AddOutputFilterByType DEFLATE image/svg+xml application/xhtml+xml application/xml
AddOutputFilterByType DEFLATE application/rdf+xml application/rss+xml application/atom+xml
AddOutputFilterByType DEFLATE text/javascript application/javascript application/x-javascript
AddOutputFilterByType DEFLATE application/x-font-ttf application/x-font-otf
AddOutputFilterByType DEFLATE font/truetype font/opentype
</IfModule>

# turns cache on
<IfModule mod_expires.c>
ExpiresActive On
ExpiresDefault "access plus 4 hours"
ExpiresByType application/javascript A900
ExpiresByType application/x-javascript A900
ExpiresByType text/javascript A900
ExpiresByType text/html A86400
ExpiresByType text/xml A86400
ExpiresByType text/css A86400
ExpiresByType text/plain A86400
ExpiresByType image/gif A86400
ExpiresByType image/jpg A86400
ExpiresByType image/jpeg A86400
ExpiresByType image/png A86400
ExpiresByType image/bmp A86400
ExpiresByType application/x-shockwave-flash A86400
</IfModule>
<ifmodule mod_headers.c>
<filesmatch "\\\\.(ico|jpe?g|png|gif|swf)$">
Header set Cache-Control "max-age=2592000, public"
</filesmatch>
<filesmatch "\\\\.(css)$">
Header set Cache-Control "max-age=604800, public"
</filesmatch>
<filesmatch "\\\\.(js)$">
Header set Cache-Control "max-age=216000, private"
</filesmatch>
<filesmatch "\\\\.(x?html?|php)$">
Header set Cache-Control "max-age=600, private, must-revalidate"
</filesmatch>
</ifmodule>


matthes
Avatar matthes
Foren Moderator
Evil Genius
Content Halbgott (973 Beiträge)
am 26.11.2014, 15:51 Uhr schrieb matthes

Es wäre hilfreich, wenn Du nur die relevanten Teile kopieren würdest.
Die Zeilen vom mod_deflate und mod_expires haben damit nichts zu tun - das macht es unleserlich.

Gültige Fehlerseite:
Der Server gibt korrekt den Status 404 zurück.
Das hast Du erledigt.

Individuelle Fehlerseite:
Das angezeigte HTML ist individuell gestaltet und keine Standard-Fehlerseite, die mit der Serversoftware ausgeliefert wird.
Das ist nicht erledigt.
Rufe einfach mal eine Seite auf, die es nicht gibt - der Server liefert die Standard-Seite aus.

Warum? Weil es keine 404.php bei Dir gibt, meldet der Server sogar:
"Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request."
Heißt, dass auch die ErrorDocument-Angabe einen 404-Fehler erzeugt hat.

Ergo: 404.php ergänzen.


Es bleibt aber die Frage, woher die Rewrite-Zeilen kamen, die Du nun einfach kommentiert hast? Denn soweit ich das sehe, macht jetzt jede Deiner Seiten ein Problem - die Anfragen laufen ins Leere, sollten aber von der index.php beantwortet werden.
Das ist also nicht der richtige Weg. Stattdessen muss die index.php "lernen", fehlende Seiten korrekt als fehlend zurückzugeben.


Make Seitenreport great again!

kloeskes
Neuling (6 Beiträge)
am 27.11.2014, 08:16 Uhr schrieb kloeskes

Wie kann die Index das lernen?

Die Fehlerseite ist da und war es schon immer. Anscheinend wird sie nur nicht immer gefunden.

www.kfz-gutachter.de/berlin/kakerlake

ist eine Seite, die es nicht gibt und führt zur individuellen Fehlerseite.


matthes
Avatar matthes
Foren Moderator
Evil Genius
Content Halbgott (973 Beiträge)
am 27.11.2014, 12:31 Uhr schrieb matthes

www.kfz-gutachter.de/rezjrejzrej

Führt zur Suche.


Make Seitenreport great again!

  • 1


« zurück zu: .htaccess

Das Seitenreport Forum hat aktuell 5267 Themen und 36089 Beiträge.
Insgesamt sind 48168 Mitglieder registriert.