php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2004-2

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 21.12.2004, 20:19  
Benutzer
 
Registriert seit: 25.10.2004
Beiträge: 43
bratwurstschorsch
Standard problem mit 404

habe den code so in meiner seite.

Code:
if 	($var1 != $var1.1 or $var2 != $var2.2) {
			header("HTTP/1.0 404 Not Found"); 
			header("Connection: close");
			echo "FEHLER";
}
nur leider baut er die seite komplett auf, obwohl er sie nicht aufbauen dürfte.

hier das beispiel.

so ist die url korrekt und die seite soll aufgebaut werden.
http://xxx/Bars-Kneipen/Bars-Kneipen-4.html

jetz ist die url falsch und er merkt auch das es ein fahler ist, aber die seite wird trotzdem aufgebaut.
http://xxx/fehler/fehler-4.html

gruss

bratwurstschorsch
bratwurstschorsch ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 21.12.2004, 21:56  
Benutzer
 
Registriert seit: 25.10.2004
Beiträge: 43
bratwurstschorsch
Standard

nochmal ne frage.

woher erkenne ich denn dass ein fehler 404 auftritt.

nehmen wir zb diese url.
da is ein fehler, da nix in der datenabnk und der aufgerufenen varriable ist. wie kann ich da jetz einen 404 fehler bekommen?

http://xxx/dasdas/Rdasdasdasdasdr-2943423210.html
bratwurstschorsch ist offline  
Alt 21.12.2004, 22:00  
Erfahrener Benutzer
 
Benutzerbild von JanM
 
Registriert seit: 22.12.2003
Beiträge: 788
PHP-Kenntnisse:
Fortgeschritten
JanM ist zur Zeit noch ein unbeschriebenes Blatt
Standard

ich würde gerne helfen, habe aber leider nicht gant verstanden was du mit dem cript ereichen willst.
erläutere es bitte nochmal
__________________

Statistik
JanM ist offline  
Alt 21.12.2004, 22:17  
Benutzer
 
Registriert seit: 25.10.2004
Beiträge: 43
bratwurstschorsch
Standard

ok also ich habe mod rewrite auf meiner seite. das setzt sich so zusammen:

/name_der_Hauptkategorie/Name_der_Aktuellen_kategorie-$zahl_für_die_datenbank.html

das ganze wird dann umgeleitet. auf die richtige datei.
also sieht dann zb so aus:
datei.php?hauptkat="name_der..."&aktuellekat="name _der_..."&zahl=$zahl

google nimmt jetz alle dateine mit den entsprechenden urls in den index auf. ändere ich jetz den namen der kategorie, dann ändert sich auch die url der kategorie. das problem ist, dass google noch die alten urls hat, die aber trotzdem eine seite aufbauen. das will ich verhindern.
also will ich abfragen ob der titel der aus der url kommt mit dem in der datenbank übereinstimmt. stimmt er nicht überein, dann sollte ein fehler 404 ausgesand werden und am besten eine 404 Fehlerseite erscheinen, oder sonst irgend was anderes, aber nicht die seite oder eine seite wo dann oben ein datenbankfehler angezeigt wird, da unter der zahl kein eintrag mehr vorhanden ist.

das ganze wollte ich dann mit einem header 404 machen aber das geht irgendiwe nciht.
bratwurstschorsch ist offline  
Alt 21.12.2004, 22:30  
Gast
 
Beiträge: n/a
Standard

htaccess.... ganz einfach:


ErrorDocument 404 http://domain.de/error.php?show=error404
ErrorDocument 500 http://domain.de/error.php?show=error500
ErrorDocument 403 http://domain.de/error.php?show=error403


^^^da hast gleich 3 Fehlertypen

Du musst jetzt nur noch diese Seiten erstellen, die dann kommen sollen
 
Alt 21.12.2004, 22:54  
Benutzer
 
Registriert seit: 25.10.2004
Beiträge: 43
bratwurstschorsch
Standard

hmm ja normal geht das auch wenn ich irgendwas angeben, aber durch das mod_rewrite funzt dass nicht, da die seiten theoretisch schon vorhanden sind, aber erst wenn die datei aufgerufen wurde stellt sich heraus, dass da ein eintrag fehlt.

der mod_rewrite code sieht nämlich so aus

RewriteRule ^(.*)/(.*)-([0-9]+)\.html$ http://xxxx/datei.php?var1=$1&var2=$2&var3=$3 [L] [QSA]
bratwurstschorsch ist offline  
Alt 22.12.2004, 03:11  
Gast
 
Beiträge: n/a
Standard

Thema: "suchmaschinenfreundliche Links"
Zitat:
Zitat von bratwurstschorsch
hmm ja normal geht das auch wenn ich irgendwas angeben, aber durch das mod_rewrite funzt dass nicht, da die seiten theoretisch schon vorhanden sind, aber erst wenn die datei aufgerufen wurde stellt sich heraus, dass da ein eintrag fehlt.
Das wäre alles kein Problem, wenn Dein Anzeigescript $_SERVER["PATH_INFO"] auswerten würde.

http://localhost/index.php/var1/wert1/var2/wert2 indiziert Google anstandslos, weil es nicht als dynamischer Content erkannt wird bzw. erkannt werden kann!

Dein Script muß nur noch das auswerten, was in $_SERVER["PATH_INFO"] steht und nach $_GET "schieben" (varX -> WertX - janz wie Du willst)...
 
Alt 22.12.2004, 07:59  
Erfahrener Benutzer
 
Registriert seit: 21.12.2004
Beiträge: 5.235
PHP-Kenntnisse:
Fortgeschritten
mepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblick
mepeisen eine Nachricht über ICQ schicken mepeisen eine Nachricht über Skype™ schicken
Standard

Folgendes sieht doch etwas abenteuerlich aus:

Code:
$var2 != $var2.1
Der Punkt passt nicht ganz, oder ist der nur Zufall?
mepeisen ist offline  
Alt 22.12.2004, 17:09  
Benutzer
 
Registriert seit: 25.10.2004
Beiträge: 43
bratwurstschorsch
Standard

@meikel

versteh ich jetz nicht ganz. ich habe ein einfaches mod_rewrite in der .htaccess und das sagt er soll auf eine datei umlenken. dabei wird eine zahl übergeben und nur diese ist notwendig um aus der datenbank sachen heraus zu lesen. da ich aber in der url noch mehr stehen haben will, wird der /titel der hauptkategorie/aktuellKategorie-id.html
als url ausgegeben.
ändere ich jetz den titel, so ändert sich auch die url. lösche ich eine kategorie, dann baut er das grundgerüst der seite auf nur ohne den datenbank inhalt, da nix mehr vorhanden ist.
jetz habe ich mir gedacht, dass ich einfach die beiden titel aus der url mit dem titel der datenbank vergleiche und wenn sie identisch sind, dann baut sich die seite auf und wenn sie unterschiedlich sind, dann soll er einen 404 fehler seite nicht vorhanden ausgeben, damit google die nicht mehr aktuellen links ausm index schmeisst.
nur leider baut er die seite auf un macht nix.
nur meine frage. wie mache ich es, dass er die seite nicht aufbaut und auf nen 404fehlersetie umleitet. in der .htaccess gehts ja irgendwie nicht, weil dort noch nicht zu erkennen ist ob die datei da ist oder nicht. erst wenn das script ne select abfrage macht und merkt der titel ist anders oder es ist an der id so und so nix da, soll er nen 404 ausgeben.

wäre cool wenn jemand wüsste wie ich das mache, sonst habe ich bald über 2000 seiten doppelten content im google index und das könnte dazu führen das ich im spam filter lande, was ich nicht will.

gruss

bratwurstschorsch
bratwurstschorsch ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Erledigt] Galerie Problem... coraplanet PHP Tipps 2008 4 06.06.2008 13:42
Sessions Problem StephenKing PHP Tipps 2008 3 16.10.2007 08:30
datensätze defekt oder problem mit dem einlesen? Ministry Datenbanken 4 06.07.2006 18:42
problem!!! PHP Tipps 2006 6 08.02.2006 11:06
[Erledigt] wieder ein Problem bei phpmailer und smtp PHP Tipps 2006 24 07.02.2006 01:07
[Erledigt] Problem bei Massenmails versenden mit der Funktion mail PHP-Fortgeschrittene 3 19.01.2005 13:36
[Erledigt] Problem mit Übergabe einer Klasse in PHP4 PHP-Fortgeschrittene 10 08.01.2005 21:00
Problem mit Weiterleitung PHP Tipps 2004-2 16 22.12.2004 17:49
Smarty und PHP-Skript Problem PHP Tipps 2004-2 2 03.12.2004 22:27
[Erledigt] PHP Upload (Master Value/Local Value Problem) PHP-Fortgeschrittene 5 23.11.2004 07:21
Problem mit alter JavaScript-Funktion woods PHP Tipps 2004 1 13.08.2004 13:34
[Erledigt] Problem mit Timestamp! PHP Tipps 2004 24 08.06.2004 19:51
Login Problem PHP Tipps 2004 4 04.06.2004 18:46
foreach problem mAy^daY PHP Tipps 2004 3 02.06.2004 20:29

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
seite normal aber 404, php header 404 does not work, datenbank produkt nicht vorhanden google 404, error 404 umlenken, suchmaschinenfreundliche url falsche umleitung fehler 404, mod rewrite 404

Alle Zeitangaben in WEZ +2. Es ist jetzt 01:36 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.