Seite 1 von 1

htaccess

Verfasst: 09.08.2008, 10:56
von samsine
Von unserer Maklerseite werden Objekte von den Robots erfasst.

Jetzt finden sich Links zu bereits verkauften Objekten bei Google.

Ich habe versucht diese Links auf eine andere Seite umzuleiten, leider ohne Erfolg.
Redirect permanent /objekt1.php?dsn=7509088E-C580-4D46-AA0A-5924E0EA7CF8&typ=2 https://www.meine-seite.com/html/verkauft.html
Anscheinend liegt es am rot markierten Teil.

Wie kann ich dennoch diese einzelnen Seiten umleiten?


2. Problem:

Google ruft immer wieder die Kontaktseiten auf. (Textlink und Button im Exposè).
Die Kontaktseiten habe ich mittels robots.txt gesperrt.
User-agent: *
Disallow: /ff_webserver/kontakt.php
Hilft nur nix :(



Danke Samsine

Verfasst:
von

Hochwertiger Linkaufbau bei ABAKUS:
  • Google-konformer Linkaufbau
  • nachhaltiges Ranking
  • Linkbuilding Angebote zu fairen Preisen
  • internationale Backlinks
Wir bieten Beratung und Umsetzung.
Jetzt anfragen: 0511 / 300325-0

Verfasst: 09.08.2008, 11:19
von chris21
Hallo,

der bei Dir rot markierte Teil der URL ist ein Query String, welcher durch das von Dir verwendete mod_alias nicht verarbeitet werden kann.

Lösen kannst Du das Problem mit mod_rewrite:

Code: Alles auswählen

RewriteCond %{QUERY_STRING} ^dsn=7509088E-C580-4D46-AA0A-5924E0EA7CF8&typ=2$
Rewrite Rule (.+) http://www.example.com/html/verkauft.html [L,R=301]
Das weitere Problem lässt sich nicht so leicht lösen, hilfreich ist es u.a., auf der kontakt.php in den Meta-tags für die Robots nen "noindex, nofollow, noarchive" zu präsentieren.

Dieses Problem über die htaccess zu klären würde schwierig werden, da Du dann alle Google-Bots genau erkennen müsstest. Hier steht Aufwand und Nutzen aber in keinem Verhältnis.

Achso: willkommen hier im Forum :)

MfG, Chris

Verfasst: 09.08.2008, 11:26
von samsine
Danke für die schnelle Hilfestellung. :)

Code: Alles auswählen

RewriteCond %{QUERY_STRING} ^dsn=7509088E-C580-4D46-AA0A-5924E0EA7CF8&typ=2$
Rewrite Rule (.+) http://www.example.com/html/verkauft.html [L,R=301] 

Leider funzt es nicht, mit der Änderung in der .htaccess wird ein 500er ausgegeben.


Gruß Samsine

Verfasst:
von

Verfasst: 09.08.2008, 11:33
von chris21
Hm, sieht nach Tippfehler meinerseits aus ;)

Code: Alles auswählen

RewriteCond %{QUERY_STRING} ^dsn=7509088E-C580-4D46-AA0A-5924E0EA7CF8&typ=2$
RewriteRule (.+) http://www.example.com/html/verkauft.html [L,R=301]
Falls diese kleine Änderung nicht hilft, schau mal hier nach:

https://www.modrewrite.de/foren/ftopic82.html

Verfasst: 09.08.2008, 15:15
von samsine
Die Zeilen helfen leider nicht weiter ...
Umleitungsschleife.
Die aufgerufene Website leitet die Anfrage so um, dass sie nie beendet werden kann.
der Query String wird dabei an die verkauft.html angehängt.
https://www.meine-seite.de/html/verkauft.html?dsn=7509088E-C580-4D46-AA0A-5924E0EA7CF8&typ=2


Im beigefügten Link hab ich Einiges gefunden, was jedoch keinen Erfolg bringt.

beispielsweise diese Lösung:

Code: Alles auswählen

RewriteCond %{QUERY_STRING} ^dsn=7509088E-C580-4D46-AA0A-5924E0EA7CF8&typ=2$
RewriteRule ^/html/verkauft\.html$ /html/verkauft.html? [R=301,L] 

Wobei ich mir nimmer sicher bin, ob eine Weiterleitung einzelner ehemaliger Objekte eine gute Lösung ist.
Schließlich indexiert Google fleissig und so entstehen immer mehr Seiten, die kein Ergebnis bringen.
D.h. ich müßte jede Leerseite in die htaccess aufnehmen, da jedes Objekt eine andere DSN hat :(


Ich überlege grad für alle erledigten Exposés eine Meldung ausgeben zu lassen.


Dazu noch eine Frage .... Google besucht Seiten mit erledigten Exposés.
Wie bekomme ich diese Seiten aus den SuMa-Ergebnissen raus?
Hat ja wenig Sinn, wenn diese Seiten immer wieder von den Robots erfasst werden.


Gruß Samsine

Verfasst: 09.08.2008, 15:34
von chris21
Hi,

das Ausrufezeichen hatte ich leider tatsächlich noch vergessen. Dadurch wird verhindert, dass der Query String mit übernommen wird.

Code: Alles auswählen

RewriteCond %{QUERY_STRING} ^dsn=7509088E-C580-4D46-AA0A-5924E0EA7CF8&typ=2$
RewriteRule (.+) http://www.example.com/html/verkauft.html? [L,R=301] 
würde also helfen, allerdings nur, wie erkannt, für die eine Unterseite.

Praktischer wäre es vermutlich, hier eine Automatisierung vorzunehmen.

Zwei Modelle kämen mir da in den Sinn:

a) Euer CMS wirft einen 404 Header aus, sobald das Objekt verkauft wurde.

b) Euer CMS wirft einen 301 Header aus, sobald das Objekt verkauft wurde und leitet auf die /html/verkauft.html um.

b) ist vermutlich der bessere Weg.

Dafür würdet Ihr einen "Flag" benötigen, z.B. $verkauft, der anfangs auf false gesetzt ist (und auf true geändert wird, sobald verkauft wurde), und dann als erstes in der Datei objekt1.php (also vor jeder Ausgabe/Leerzeichen etc.):

Code: Alles auswählen

if($verkauft){
header("HTTP/1.1 301 Moved Permanently");
header("Status: 301 Moved Permanently");
header("Location:http://www.example.com/html/verkauft.html);
header("Connection: close");
exit();
}

Verfasst: 09.08.2008, 16:26
von samsine
es funzt - danke :)


nun werd ich mich an Lösung b ranmachen.



Vielen Dank für Deine tolle Hilfestellung :) :)