Man kann die robots-txt mit jedem beliebigen Texteditor erstellen und diese könnte wie folgt aussehen. Wir generieren hier eine dynamische robots.txt, dafür gibt es in PHP mehrere Möglichkeiten um in eine Datei zu schreiben. Wir nutzen hier file_put_contents()
und schreiben dafür unsere eigene kleine Funktion, die kann beliebig erweitert und angepasst werden.
# robots.txt - https://www.tnado.com/
Sitemap: https://www.tnado.com/sitemap.xml
# Wenn Du Sitemaps erstellst die in getrennten Ordnern befinden wie en-en oder en-gb wegen der Sprache. Kannst Du diese auch angeben
Sitemap: https://www.tnado.com/de-de/sitemap.xml
Sitemap: https://www.tnado.com/en-en/sitemap.xml
# Man könnte Google bots oder auch Bing bots usw. den zugriff verweigern jedoch ist es den überlassen darauf zu hören
User-agent: Googlebot
Disallow: /wp-admin/
# User Agenten mit einem stern bedeutet das alle erlaubt sind
User-agent: *
# Du kannst Ordner den zugriff verbieten
Disallow: /admin/
Disallow: /images/
Disallow: /temp/
# Oder auch Dateien den zugriff verbieten
Disallow: /fotoalbum.html
Robots Textdatei im Web
Nutze die robots-txt, da sie auch ein Teil im Web an Bedeutung hat und Dir Unnötiges ersparen kann, auch wenn nicht alle Bots auf diese hören und folgen. Es existieren sehr viele Bots die auch unnötige dinge auf Deiner Webseite verursachen und somit z.B. Deine Statistiken beeinflussen. Sie ignorieren jegliche Aufforderung in der robots.txt, gehen in jeden Ordner auf Deiner Webseite und durchwühlen alles. Bots arbeiten automatisiert, sie sind programmiert dafür bestimmte aufgaben zu verrichten und werden nicht müde ;).
Tipp
Lasse keine wichtigen Dateien unverschlüsselt auf Deinem Server und schon gar nicht frei zugänglich, wenn Du wichtige Dateien auf dem Server hast. Versuche Deine Umgebung so gut wie möglich abzusichern, der Grund, warum eine Webseite unsicher ist, liegt in den meisten fällen an den Programmierer.
Beachten
Es besteht keinerlei Garantie, dass sich Suchmaschinen an die Verbote in der robots.txt halten.
Eine eigene Funktion erstellen
So kommen wir nun zu unserer Funktion, wir ermöglichen hier ein array welches wir args nennen, dies ist die Abkürzung für arguments. In den erstellen wir unsere nötigen attribute wie domain, sitemap url, line und auch path.
0
/**
1
* Dynamic robots.txt
2
*
3
* @param $args (domain|sitemap|line|path)
4
* @return boolean (true|false)
5
*/
6
function createRobotsTXT($args = ()) {
7
8
$return = false;
9
$default = '# robots.txt - ' . (isset($args[
10
$default .= 'Sitemap: ' . (isset($args['sitemap-uri'])?$args['sitemap-uri']:'') . PHP_EOL;
11
$default .= (isset($args['line'])?$args['line']:'') . PHP_EOL;
12
13
if (isset($args['path']) && !file_exists($args['path'])) {
14
$return = file_put_contents($args['path'], $default);
15
}
16
17
return $return;
18
}
So nutzen wir unsere Funktion dann schließlich um unsere Datei zu erstellen.
0
createRobotsTXT(
( 1
'domain' => 'https://www.tnado.com/',
2
'sitemap-uri' => 'https://www.tnado.com/sitemap.xml',
3
'line' => '',
4
'path' => 'robots.txt'
5
));
Die Ausgabe in diesem Fall würde bei mir so aussehen und wir hätten alles übergeben was auch drin ist.
# robots.txt - https://www.tnado.com/
Sitemap: https://www.tnado.com/sitemap.xml
Erweitertes Beispiel für eine robots-txt Datei
Anderes Beispiel um Unterverzeichnisse und auch Dateien direkt auszuschließen.
0
createRobotsTXT(
( 1
'domain' => 'https://www.tnado.com/',
2
'sitemap-uri' => 'https://www.tnado.com/sitemap.xml',
3
'line' => 'User-agent: UniversalRobot/1.0
4
User-agent: mein-Robot
5
Disallow: /quellen/dtd/
6
7
User-agent: *
8
Disallow: /fotos/
9
Disallow: /temp/
10
Disallow: /fotoalbum.html',
11
'path' => 'robots.txt'
12
));
Bei dieser Ausgabe sieht es natürlich etwas mehr aus, weil wir auch mehr reingeschrieben haben als vorher.
# robots.txt - https://www.tnado.com/
Sitemap: https://www.tnado.com/sitemap.xml
User-agent: UniversalRobot/1.0
User-agent: mein-Robot
Disallow: /quellen/dtd/
User-agent: *
Disallow: /fotos/
Disallow: /temp/
Disallow: /fotoalbum.html
Mit Google Search Console
In der Search Konsole von Google ist ein Reiter unter Crawling -> robots.txt-tester und es kann auch dort eine robots.txt erstellt werden und auch getestet werden, dies ist jedoch nicht notwendig und dauert etwas länger. Die anderen Wege sind schneller und es dauert auch bis Google sie dort in der Search Konsole anzeigt.
Hier findest Du noch ein Beitrag von mir über die Google Search Console.
Du kannst unter anderem Deine Sitemap in der robots.txt angeben oder auch mit bestimmte bots ausschließen (sofern sie den auf dies hören und diese nicht ignorieren).
Weitere Informationen zu robots.txt von Google.
Alternativ mit der htaccess
Man kann mit der .htaccess z.B. mehr machen und das Ausschließen wirklich ermöglichen, wenn man Kenntnisse mit Regulären ausdrücken hat und diese beherrscht.
Anzeige