404.php

Hier können Probleme und alles andere in Deutscher Sprache gelöst werden.
Post Reply
moenk
Regular
Posts: 52
Joined: Sat Apr 29, 2006 11:21 pm
Contact:

404.php

Post by moenk » Tue Aug 26, 2008 1:30 pm

Ich stell mir so vor, einen eigenen 404.php für das s9y zu haben. Das Ding will ich dann verwenden statt der index.php, wie sie nun noch ausgegeben wird. Die soll einen sauberen 404 zurückgeben und den Code wie Google ihn in den Webmaster-Tools vorschlägt verwenden, damit man schnell die gewünschte Seite findet.
Gibts irgendwie so eine minimale Variante einer php-Datei, auf der man sowas aufbauen kann? Also die soll den Header und Footer und sowas wie immer ausgeben, dazwischen codier ich dann das was ich gern da noch so hätte.
CMS mit S9Y: MCSE - LPIC - SQL - GIS

User avatar
garvinhicking
Core Developer
Posts: 30020
Joined: Tue Sep 16, 2003 9:45 pm
Location: Cologne, Germany
Contact:

Re: 404.php

Post by garvinhicking » Tue Aug 26, 2008 2:08 pm

Hi!

Dafür kannst Du die $view smarty variable abfragen, wenn die auf "404" steht kannst du dann eigenen individuellen content ausgeben.

Eine eigenen PHP-Datei ist nicht möglich, aber auch nicht nötig, da du alles über smarty machen kannst und die 404 Header ja von s9y eh ausgegeben werden.

Grüße,
Garvin
# Garvin Hicking (s9y Developer)
# Did I help you? Consider making me happy: http://wishes.garv.in/
# or use my PayPal account "paypal {at} supergarv (dot) de"
# My "other" hobby: http://flickr.garv.in/

moenk
Regular
Posts: 52
Joined: Sat Apr 29, 2006 11:21 pm
Contact:

Post by moenk » Tue Aug 26, 2008 2:09 pm

Mal für doofe wie mich ;-) In meinem Template kann ich einen Block für den 404-Fall vorsehen?
Da wäre ein Beispiel hilfreich wie das aussehen könnte. Oder wenns schon ein Template gibt wo das gemacht wurde reicht der Name, dann guck ich da rein.
CMS mit S9Y: MCSE - LPIC - SQL - GIS

User avatar
garvinhicking
Core Developer
Posts: 30020
Joined: Tue Sep 16, 2003 9:45 pm
Location: Cologne, Germany
Contact:

Post by garvinhicking » Tue Aug 26, 2008 2:13 pm

Hi!

Klar. Am einfachsten geht das in der index.tpl, da in der nähe wo die $CONTENT Variable ausgegeben wird:

Code: Select all

{if $view == '404'}
Hier gibt's nichts zu sehen, gehen Sie weiter
{/if}


Dann siehst du statt blogcontent nur diese Zeile. Die IF-Abfrage kannst du auch überall anders einbauen, wenn du z.B. keine Seitenleisten ausgeben willst.

Templates mit so was gibts meines Wissens derzeit nicht von uns, da wir den Standpunkt vertreten dass 404-Seiten auch trotzdem das Standard-Blog zeigen sollten um die Benutzer auf seiner Seite zu halten.

Grüße,
Garvin
# Garvin Hicking (s9y Developer)
# Did I help you? Consider making me happy: http://wishes.garv.in/
# or use my PayPal account "paypal {at} supergarv (dot) de"
# My "other" hobby: http://flickr.garv.in/

User avatar
yellowled
Regular
Posts: 7078
Joined: Fri Jan 13, 2006 12:46 pm
Location: Eutin, Germany
Contact:

Post by yellowled » Tue Aug 26, 2008 2:31 pm

moenk wrote:Da wäre ein Beispiel hilfreich wie das aussehen könnte. Oder wenns schon ein Template gibt wo das gemacht wurde reicht der Name, dann guck ich da rein.

Mimbo oder Hemingway nutzen sowas, siehe jeweils in der index.tpl.

YL
amazon Wishlist - Serendipity-Podcast (German only, sorry)

moenk
Regular
Posts: 52
Joined: Sat Apr 29, 2006 11:21 pm
Contact:

Post by moenk » Tue Aug 26, 2008 6:03 pm

Das ja easy :-) - dankefein auf jeden Fall schon mal!
Nun sind die Wünsche der lieben Tante G. mir ja sofort Befehl, da soll dieser Code rein:

Code: Select all

<style type="text/css">
  #goog-wm { }
  #goog-wm h3.closest-match { }
  #goog-wm h3.closest-match a { }
  #goog-wm h3.other-things { }
  #goog-wm ul li { }
  #goog-wm li.search-goog { display: block; }
</style>
<script type="text/javascript">
  var GOOG_FIXURL_LANG = 'de';
  var GOOG_FIXURL_SITE = 'http://www.gis1.de/';
</script>
<script type="text/javascript"
    src="http://linkhelp.clients.google.com/tbproxy/lh/wm/fixurl.js"></script>

Damit haben die bunten Schmarties aber ihre Bauchschmerzen - und nu?
Schick wäre denn ja auch noch wenn das "de" und die URL in Variablen verpackt würden, gibts die auch?
CMS mit S9Y: MCSE - LPIC - SQL - GIS

User avatar
garvinhicking
Core Developer
Posts: 30020
Joined: Tue Sep 16, 2003 9:45 pm
Location: Cologne, Germany
Contact:

Post by garvinhicking » Tue Aug 26, 2008 6:56 pm

Hi!

Siehe FAQ aufwww.s9y.org - { muss durch {ldelim} und } durch {rdelim} ersetzt werden.


de: {$lang}
url: {$serendipityBaseURL}

Grüße,
Garvin
# Garvin Hicking (s9y Developer)
# Did I help you? Consider making me happy: http://wishes.garv.in/
# or use my PayPal account "paypal {at} supergarv (dot) de"
# My "other" hobby: http://flickr.garv.in/

moenk
Regular
Posts: 52
Joined: Sat Apr 29, 2006 11:21 pm
Contact:

Post by moenk » Wed Aug 27, 2008 12:11 am

Danke nochmal - hier nun der neue Content-Block im Zusammenhang:

Code: Select all

{if $view == '404'}
<td valign="top">
<style type="text/css">
  #goog-wm {ldelim} {rdelim}
  #goog-wm h3.closest-match {ldelim} {rdelim}
  #goog-wm h3.closest-match a {ldelim} {rdelim}
  #goog-wm h3.other-things {ldelim} {rdelim}
  #goog-wm ul li {ldelim} {rdelim}
  #goog-wm li.search-goog {ldelim} display: block; {rdelim}
</style>
<script type="text/javascript">
  var GOOG_FIXURL_LANG = '{$lang}';
  var GOOG_FIXURL_SITE = '{$serendipityBaseURL}';
</script>
<script type="text/javascript"
    src="http://linkhelp.clients.google.com/tbproxy/lh/wm/fixurl.js"></script>
</td>
{else}
<td id="content" valign="top">{$CONTENT}</td>
{/if}

Sieht zwar noch nicht so aus wie es soll, also das Muster von Google sieht da anders aus, aber das findet sich auch noch. Guck mir den Code noch mal an und vergleich den ob da noch was fehlt.
CMS mit S9Y: MCSE - LPIC - SQL - GIS

User avatar
u1amo01
Regular
Posts: 267
Joined: Fri Sep 28, 2007 3:55 pm
Location: Kurpfalz, Germany
Contact:

Post by u1amo01 » Sat Aug 30, 2008 11:23 am

Sowas habe ich doch schon immer gesucht. Super!

Vielen Dank!

Hallenser
Regular
Posts: 5
Joined: Thu Sep 04, 2008 7:25 pm
Contact:

Post by Hallenser » Thu Sep 04, 2008 8:34 pm

Ein freundliches Hallo in die Runde: Ich bin der Neue! :-)

ich habe die Lösung bei mir ausprobiert, allerdings funktioniert es bei mir nicht. Egal welchen Beitrag auf meiner Startseite ich öffnen will, es erscheint nach Einfügen des Codes in die index.tpl immer die 404-Seite.

Ich vermute, das es an dem Permalink-Plugin liegt, was ich für meine URLs verwende. Ist das möglich und was kann ich tun?

Gruß,
Carsten

User avatar
garvinhicking
Core Developer
Posts: 30020
Joined: Tue Sep 16, 2003 9:45 pm
Location: Cologne, Germany
Contact:

Post by garvinhicking » Thu Sep 04, 2008 10:43 pm

Hi!

Hallenser wrote:Ein freundliches Hallo in die Runde: Ich bin der Neue! :-)


Willkommen im Club :)

ich habe die Lösung bei mir ausprobiert, allerdings funktioniert es bei mir nicht. Egal welchen Beitrag auf meiner Startseite ich öffnen will, es erscheint nach Einfügen des Codes in die index.tpl immer die 404-Seite.


Was genau hast Du probiert, wie ist deine URL?

Hast du dir mal {$view} einfach irgendwo in deiner content.tpl ausgeben lassen um zu prüfen wie diese Variable steht, wenn du deine "ungültige" URL aufrufen willst?

Grüße,
Garvin
# Garvin Hicking (s9y Developer)
# Did I help you? Consider making me happy: http://wishes.garv.in/
# or use my PayPal account "paypal {at} supergarv (dot) de"
# My "other" hobby: http://flickr.garv.in/

Hallenser
Regular
Posts: 5
Joined: Thu Sep 04, 2008 7:25 pm
Contact:

Post by Hallenser » Thu Sep 04, 2008 11:28 pm

Hier ein Beispiel meiner URLs: http://www.webmaster-support.net/virtual-pc.html

zZ. habe ich die Funktion natürlich disabled aber oben links in der Ecke, kann man die Ausgabe von {$view} sehen: der Wert ist bei den Beiträgen "404", bei der Startseite aber "start". Müsste hier nicht ein Code 200 ausgeben, wenn alles in Ordnung ist?
Wenn ich die HTTP-Header mit einem extern Programm auslese, werden sie übrigens immer korrekt angegeben. Eine nicht existierende Seite mit 404 und wenn alles OK ist 200.

User avatar
garvinhicking
Core Developer
Posts: 30020
Joined: Tue Sep 16, 2003 9:45 pm
Location: Cologne, Germany
Contact:

Post by garvinhicking » Fri Sep 05, 2008 10:40 am

Hi!

Das ist aber strange, ich kann das nicht ganz verstehen. Könntest du mal deine index.php editieren und überall mal nach "404" suchen, und jedesmal wenn "404" der Variable $serendipity['view'] zugewiesen wird daraus ein "404a", "404b" etc. machen? So kann man rausfinden, welches der 404 genau dafür zuständig ist. Eigentlich setzt das custom permalinks plugin nämlich den View auf 200!

Ich gehe davon aus, dass du die aktuellste version vom custom permalinks plugin nutzt?

Viele Grüße,
Garvin
# Garvin Hicking (s9y Developer)
# Did I help you? Consider making me happy: http://wishes.garv.in/
# or use my PayPal account "paypal {at} supergarv (dot) de"
# My "other" hobby: http://flickr.garv.in/

Hallenser
Regular
Posts: 5
Joined: Thu Sep 04, 2008 7:25 pm
Contact:

Post by Hallenser » Sat Sep 06, 2008 11:10 am

ich habe die index.php editiert und es scheint so, dass der letzte 404 Eintrag (404d) dafür verantwortlich ist. Ich habe mal die index.php kopiert. Falls Du möchtest, kannst Du sie hier einsehen: http://www.webmaster-support.net/index.txt

Es handelt sich um das Bulletproof-Template v1.3, das Permalink-Plugin ist die Version 1.12.

Hallenser
Regular
Posts: 5
Joined: Thu Sep 04, 2008 7:25 pm
Contact:

Post by Hallenser » Sat Sep 06, 2008 6:12 pm

Da ich festgestellt habe das, dass Permalink Plugin keine Auswirkungen auf die Trackbacks hat, die auf anderen Seiten gesetzt werden und auch in den Archiven die normale Linkstruktur verwendet wird, habe ich es kurzerhand deinstalliert. Jetzt funktionieren auch die Fehlerseiten so wie sie sollen!

Gruß,
Carsten

Post Reply