Seite 1 von 1

htaccess: alle Zugriffe außer robots.txt umleiten

Verfasst: 06.06.2005, 21:50
von Halli
Ich hatte bisher den gleichen Webauftritt unter der example.de Domain, aber auch unter der example.at und example.ch Alle Zugriffe auf die .at und .ch Domain wurden per 301-redirect auf die entsprechende Seite der .de-Domain weitergeleitet.

Nun habe ich aber entdeckt, dass trotzdem auch Seiten der .at und .ch im Google Index waren. Daher habe ich mich entschlossen, die Zugriffe auf die .at und .ch Domain nicht mehr via 301 weiterzuleiten, sondern mit einem 410 (gone) zu beantworten:

Code: Alles auswählen

RewriteEngine on
# alle Abfragen der nicht .de-Domains blockieren
RewriteCond %{HTTP_HOST} ^www\.example\.(at|ch)$
RewriteRule ^(.*)$ / [L,G]

# alle Abfragen ohne www. am Anfang blocken
RewriteCond %{HTTP_HOST} ^example\.(de|at|ch)$
RewriteRule ^(.*)$ / [L,G]
Diese Lösung führt jedoch dazu, dass auch ein Aufruf der www.example.at/robots.txt oder www.example.ch/robots.txt eine 410-Fehlermeldung liefert. Wie kann ich die robots.txt von der Sperre ausnehmen?

Außerdem wäre es schön, wenn statt der Standard-Fehlermeldung des Browsers auf die www.example.at/error/error-410.php weitergeleitet werden könnte.

Verfasst:
von

Verfasst: 07.06.2005, 00:13
von Hasso
@Halli

Was mir so spontan einfällt; man könnte hier doch nur bestimmte Dateiendungen sperren ausser *.txt, und somit robots.txt Datei zugänglich machen...

so was wie

Code: Alles auswählen

RewriteRule (.*).(htm|php|jpg|gif)$ / ...hier geht`s normal weiter.....

Eigene 410 Fehlerseite definierst Du mit:

Code: Alles auswählen

ErrorDocument 410 http://www.example.at/error/error-410.php
Grüsse
Hasso

htaccess: alle Zugriffe außer robots.txt umleiten

Verfasst: 07.06.2005, 06:58
von bull
RewriteCond %{HTTP_HOST} ^www\.example\.(at|ch)
RewriteRule !robots\.txt https://www.example.de/ [R=301,L]

Gruß