Dies ist der Befehl checkbotp, der im kostenlosen OnWorks-Hosting-Provider über eine unserer zahlreichen kostenlosen Online-Workstations wie Ubuntu Online, Fedora Online, Windows-Online-Emulator oder MAC OS-Online-Emulator ausgeführt werden kann
PROGRAMM:
NAME/FUNKTION
Checkbot - WWW-Link-Verifizierer
ZUSAMMENFASSUNG
Checkbot [--Kekse] [--debuggen] [--Datei Dateiname] [--help]
[--mailto E-mailadressen] [--kein Vertreter Liste der Domänen]
[- ausführlich]
[- URL Start-URL]
[--Spiel Übereinstimmungszeichenfolge] [--ausschließen Zeichenfolge ausschließen]
[--Proxy Proxy-URL] [--Nur intern]
[--ignorieren String ignorieren]
[--Filter regulärer Ausdruck ersetzen]
[--Stil Stildatei-URL]
[--Hinweis Hinweis] [--Schlaf Sekunden] [--Auszeit Auszeit]
[--Intervall Sekunden] [--nicht warnen HTTP-Antwortcodes]
[--enable-virtuell]
[--Sprache Sprachcode]
[--unterdrücken Unterdrückungsdatei]
[Start-URLs]
BESCHREIBUNG
Checkbot überprüft die Links in einem bestimmten Teil des World Wide Web. Es erstellt HTML
Seiten mit Diagnose.
Checkbot verwendet LWP, um URLs auf Seiten zu finden und zu überprüfen. Es unterstützt die gleichen Schemata wie
LWP tut dies und findet dieselben Links, die HTML::LinkExtor findet.
Checkbot betrachtet Links entweder als „intern“ oder „extern“. Interne Links sind Links
innerhalb des zu überprüfenden Webspace. Wenn ein interner Link auf ein Web verweist
document Dieses Dokument wird abgerufen, und seine Verknüpfungen werden extrahiert und verarbeitet. Extern
Links werden nur auf Funktion geprüft. Checkbot überprüft Links, wenn er sie findet, also intern
und externe Links werden gleichzeitig geprüft, auch wenn sie unterschiedlich behandelt werden.
Optionen für Checkbot sind:
--Kekse
Akzeptieren Sie Cookies vom Server und bieten Sie diese bei späteren Anfragen wieder an. Das mag sein
nützlich für Server, die Cookies verwenden, um Sitzungen abzuwickeln. Standardmäßig tut es Checkbot nicht
akzeptiere alle Cookies.
--debuggen
Debug-Modus aktivieren. Wird nicht mehr wirklich unterstützt, aber einige Dateien bleiben erhalten
um das sonst würde gelöscht werden.
--Datei
Verwenden Sie die Datei Datei Name als Grundlage für die zusammenfassenden Dateinamen. Die Übersichtsseite wird
erhalten die Datei Name gegeben, und die Serverseiten basieren auf den Datei Name ohne das
.html-Erweiterung. Wenn Sie diese Option beispielsweise auf "index.html" setzen, wird ein
Übersichtsseite namens index.html und Serverseiten namens index-server1.html und
index-server2.html.
Der Standardwert für diese Option ist "checkbot.html".
--help
Zeigt eine kurze Hilfemeldung auf der Standardausgabe an.
--mailto [, ]
Senden Sie eine E-Mail an die E-Mail Adresse wenn Checkbot mit der Überprüfung fertig ist. Du kannst mehr geben als
eine Adresse durch Kommas getrennt. Die Benachrichtigungs-E-Mail enthält eine kleine Zusammenfassung von
die Ergebnisse. Ab Checkbot 1.76 wird E-Mail nur versendet, wenn währenddessen Probleme festgestellt wurden
den Checkbot-Lauf.
--kein Vertreter
Senden Sie keine Proxy-Anfragen an die angegebenen Domänen. Die Liste der Domänen muss ein Komma sein.
getrennte Liste. Vermeiden Sie beispielsweise die Verwendung des Proxys für den localhost und
someserver.xyz, können Sie "--noproxy localhost,someserver.xyz" verwenden.
- ausführlich
Ausführliche Ausgabe während der Ausführung anzeigen. Enthält alle überprüften Links, Ergebnisse aus dem
Schecks usw.
--url
Legen Sie die Start-URL fest. Checkbot beginnt mit der Überprüfung dieser URL und überprüft dann rekursiv
alle auf dieser Seite gefundenen Links. Die Start-URL hat Vorrang vor zusätzlichen URLs
in der Befehlszeile angegeben.
Wenn für die URL kein Schema angegeben ist, wird das Dateiprotokoll angenommen.
--Spiel
Diese Option wählt aus, welche Seiten Checkbot als lokal betrachtet. Wenn die Spiel Schnur is
in der URL enthalten ist, betrachtet Checkbot die Seite als lokal, ruft sie ab und
prüft alle darin enthaltenen Links. Andernfalls wird die Seite als extern betrachtet
und es wird nur mit einer HEAD-Anfrage überprüft.
Wenn nicht explizit Spiel Schnur angegeben ist, werden die Start-URLs (Siehe Option "--url") verwendet
stattdessen als Match-String. In diesem Fall wird der letzte Seitenname, falls vorhanden, abgeschnitten.
Zum Beispiel eine Start-URL wie "http://some.site/index.html" führt zu einem Standardwert
Spiel Schnur von "http://some.site/".
Die Spiel Schnur kann ein regulärer Perl-Ausdruck sein. Zum Beispiel, um die Haupt-
Serverseite und alle direkt darunter liegenden HTML-Seiten, nicht jedoch die HTML-Seiten in der
Unterverzeichnisse des Servers, die Spiel Schnur wäre
"www.someserver.xyz/($|[^/]+.html)".
--ausschließen
URLs, die mit dem übereinstimmen ausschließen Schnur werden als äußerlich betrachtet, auch wenn sie zufällig
verbinde die Spiel Schnur (Siehe Option "--match"). URLs, die der Zeichenfolge --exclude entsprechen, sind
wird noch geprüft und wird gemeldet, wenn Probleme gefunden werden, aber sie werden nicht
auf weitere Links in die Site überprüft.
Die ausschließen Schnur kann ein regulärer Perl-Ausdruck sein. Um beispielsweise alle URLs zu berücksichtigen
Verwenden Sie bei einer externen Abfragezeichenfolge "[=\?]". Dies kann nützlich sein, wenn eine URL mit einer Abfrage
string entsperrt den Pfad zu einer riesigen Datenbank, die überprüft wird.
--Filter
Diese Option definiert a Filter Schnur, ein regulärer Perl-Ausdruck. Dieser Filter
wird für jede gefundene URL ausgeführt, wodurch die URL neu geschrieben wird, bevor sie in die Warteschlange aufgenommen wird
überprüft. Es kann verwendet werden, um Elemente aus einer URL zu entfernen. Diese Option kann nützlich sein, wenn
symbolische Links verweisen auf dasselbe Verzeichnis, oder wenn ein Content-Management-System hinzufügt
Sitzungs-IDs zu URLs.
Zum Beispiel würde "/old/new/" das Auftreten von 'alt' durch 'neu' in jeder URL ersetzen.
--ignorieren
URLs, die mit dem übereinstimmen ignorieren Schnur werden gar nicht geprüft, sie werden komplett ignoriert von
Checkbot. Dies kann nützlich sein, um bekannte problematische Links oder führende Links zu ignorieren
in Datenbanken. Die ignorieren Schnur wird nach dem abgeglichen Filter Schnur wurde angewendet.
Die ignorieren Schnur kann ein regulärer Perl-Ausdruck sein.
Zum Beispiel würde "www.server.com\/(one|two)" mit allen URLs übereinstimmen, die mit einem der beiden beginnen
www.server.com/one oder www.server.com/two.
--Proxy
Dieses Attribut gibt die URL eines Proxyservers an. Nur die HTTP- und FTP-Anfragen
wird an diesen Proxy-Server gesendet.
--Nur intern
Überspringen Sie die Prüfung externer Links am Ende des Checkbot-Laufs. Nur passend
Links werden geprüft. Beachten Sie, dass einige Weiterleitungen dennoch dazu führen können, dass externe Links
geprüft.
--Hinweis
Die beachten wird wörtlich in die Mail-Nachricht aufgenommen (Siehe Option "--mailto"). Das kann sein
Es ist beispielsweise nützlich, die URL der zusammenfassenden HTML-Seite für eine einfache Referenz anzugeben.
Nur sinnvoll in Verbindung mit der Option "--mailto".
--Schlaf
Anzahl der Sekunden zwischen den Anfragen zu schlafen. Standard ist 0 Sekunden, dh nicht
zwischen den Anfragen überhaupt schlafen. Das Setzen dieser Option kann nützlich sein, um die Last eingeschaltet zu halten
der Webserver heruntergefahren, während Checkbot ausgeführt wird. Diese Option kann auch auf a gesetzt werden
Bruchzahl, dh ein Wert von 0.1 schläft eine Zehntelsekunde dazwischen
Anfragen.
--Auszeit
Standard-Timeout für die Anforderungen, angegeben in Sekunden. Der Standardwert beträgt 2 Minuten.
--Intervall
Das maximale Intervall zwischen den Aktualisierungen der Ergebniswebseiten in Sekunden. Standard ist 3
Stunden (10800 Sekunden). Checkbot startet das Intervall bei einer Minute und schrittweise
verlängern Sie es in Richtung des maximalen Intervalls.
--Stil
Wenn diese Option verwendet wird, bettet Checkbot diese URL als Link zu einer Stildatei auf jedem ein
Seite schreibt es. Dies erleichtert die Anpassung des Layouts von Seiten, die von . generiert werden
Checkbot.
--nicht warnen
Fügen Sie keine Warnungen auf den Ergebnisseiten für die HTTP-Antwortcodes ein, die übereinstimmen
der reguläre Ausdruck. Zum Beispiel würde --dontwarn "(301|404)" nicht 301 enthalten und
404 Antwortcodes.
Checkbot verwendet die vom Server generierten Antwortcodes, auch wenn dieser Antwortcode
ist in RFC 2616 (HTTP/1.1) nicht definiert. Zusätzlich zum normalen HTTP-Antwortcode
Checkbot definiert einige Antwortcodes für Situationen, die technisch nicht geeignet sind
Problem, das aber in vielen Fällen ohnehin zu Problemen führt. Diese Codes sind:
901 Hostname erwartet, aber nicht gefunden
In diesem Fall unterstützt die URL einen Hostnamen, aber es wurde kein gefunden
in der URL. Dies weist normalerweise auf einen Fehler in der URL hin. Ein
Ausnahme ist, dass diese Prüfung nicht auf Nachrichten angewendet wird: URLs.
902 Nicht qualifizierter Hostname gefunden
In diesem Fall enthält der Hostname nicht den Domänenteil.
Dies bedeutet normalerweise, dass die Seiten gut funktionieren, wenn sie innerhalb angezeigt werden
die ursprüngliche Domain, aber nicht von außen betrachtet.
903 Doppelter Schrägstrich im URL-Pfad
Die URL enthält einen doppelten Schrägstrich. Dies ist legal, aber einige Web
Server können damit nicht gut umgehen und können dazu führen, dass Checkbot
weglaufen. Siehe auch die Kommentare unten.
904 Unbekanntes Schema in URL
Die URL beginnt mit einem Schema, das Checkbot nicht kennt
Über. Dies wird häufig durch eine falsche Eingabe des Schemas der URL verursacht.
die Regelung kann aber auch eine legale sein. Lassen Sie in diesem Fall bitte
ich weiß, damit es zu Checkbot hinzugefügt werden kann.
--enable-virtuell
Diese Option ermöglicht den Umgang mit virtuellen Servern. Checkbot geht dann davon aus, dass alle
Hostnamen für interne Server sind eindeutig, auch wenn ihre IP-Adressen die
gleich. Normalerweise verwendet Checkbot die IP-Adresse, um Server zu unterscheiden. Das hat die
Vorteil, dass wenn ein Server zwei Namen hat (zB www und buzzle) seine Seiten nur erhalten
einmal überprüft. Wenn Sie mehrere virtuelle Server überprüfen möchten, führt dies zu Problemen,
die diese Funktion umgeht, indem der Hostname verwendet wird, um den Server zu unterscheiden.
--Sprache
Das Argument für diese Option ist ein aus zwei Buchstaben bestehender Sprachcode. Checkbot verwendet Sprache
Verhandlung, um Dateien in dieser Sprache anzufordern. Standardmäßig wird Englisch angefordert
Sprache (Sprachcode 'en').
--unterdrücken
Das Argument für diese Option ist eine Datei, die Kombinationen von Fehlercodes und
URLs, für die Warnungen unterdrückt werden sollen. Dies kann verwendet werden, um die Meldung bekannter und
nicht behebbare URL-Fehler oder Warnungen.
Das Format der Unterdrückungsdatei ist zunächst ein einfaches, durch Leerzeichen getrenntes Format
Auflistung des Fehlercodes gefolgt von der URL. Jede Fehlercode- und URL-Kombination ist
in einer neuen Zeile aufgeführt. Kommentare können der Datei hinzugefügt werden, indem die Zeile mit a . beginnt
"#"-Zeichen.
# 301 Dauerhaft verschoben
301 http://www.w3.org/P3P
# 403 Verboten
403 http://www.herring.com/
Für weitere Flexibilität kann anstelle einer normalen URL ein regulärer Ausdruck verwendet werden. Die
reguläre Ausdrücke müssen in Schrägstriche eingeschlossen werden. Zum Beispiel, um alle zu unterdrücken
403 Fehler bei Wikipedia:
403 /http:\/\/wikipedia.org\/.*/
Veraltete Optionen, die in einer zukünftigen Version verschwinden werden:
--allow-simple-hosts (veraltet)
Diese Option deaktiviert Warnungen zu URLs, die nicht qualifizierte Hostnamen enthalten. Dies
ist nützlich für Intranet-Sites, die oft nur einen einfachen Hostnamen verwenden oder sogar
"localhost" in ihren Links.
Die Verwendung dieser Option ist veraltet. Bitte verwenden Sie den --dontwarn-Mechanismus für den Fehler 902
stattdessen.
HINWEISE UND TIPPS
Probleme beim Überprüfen von FTP-Links
Bei einigen Benutzern können beim Überprüfen von FTP-Links ständige Probleme auftreten. In diesen Fällen
es kann nützlich sein, Net::FTP anzuweisen, den passiven FTP-Modus zum Überprüfen von Dateien zu verwenden. Das kann
indem Sie die Umgebungsvariable FTP_PASSIVE auf 1 setzen. Verwenden Sie zum Beispiel die
Bash-Shell: "FTP_PASSIVE=1 checkbot ...". Weitere Informationen finden Sie in der Net::FTP-Dokumentation
Details.
Ausreißer Checkbot
In einigen Fällen dauert es buchstäblich ewig, bis Checkbot fertig ist. Es gibt zwei häufige Ursachen
für dieses Problem.
Erstens könnte es eine Datenbankanwendung als Teil der Website geben, die eine
neue Seite basierend auf Links auf einer anderen Seite. Da Checkbot versucht, durch alle zu reisen
Links wird dies eine unendliche Anzahl von Seiten erstellen. Diese Art von Run-away-Effekt ist
normalerweise vorhersehbar. Dies kann mit der Option --exclude vermieden werden.
Zweitens kann ein Serverkonfigurationsproblem eine Schleife beim Generieren von URLs für Seiten verursachen
die gibt es wirklich nicht. Dies führt zu URLs des Formulars
http://some.server/images/images/images/logo.png, mit immer mehr 'Bildern'.
Checkbot kann dies nicht überprüfen, da der Server hätte anzeigen müssen, dass die
angeforderte Seiten existieren nicht. Es gibt keinen einfachen Weg, dies zu lösen, außer das Problem zu beheben
beleidigenden Webserver oder die defekten Links.
Probleme mit https://-Links
Die Fehlermeldung
Kann Objektmethode "new" über Paket "LWP::Protocol::https::Socket" nicht finden
bedeutet normalerweise, dass die aktuelle Installation von LWP die Überprüfung von SSL nicht unterstützt
Links (dh Links, die mit https:// beginnen). Dieses Problem kann durch die Installation gelöst werden
das Crypt::SSLeay-Modul.
Beispiele:
Die einfachste Verwendung von Checkbot besteht darin, eine Reihe von Seiten auf einem Server zu überprüfen. Um meine zu überprüfen
Checkbot-Seiten, die ich verwenden würde:
Checkbot http://degraaff.org/checkbot/
Checkbot-Läufe können einige Zeit in Anspruch nehmen, sodass Checkbot eine Benachrichtigungs-E-Mail senden kann, wenn der Lauf abgeschlossen ist
getan:
checkbot --mailto [E-Mail geschützt] http://degraaff.org/checkbot/
Es ist möglich, einen Satz lokaler Dateien zu überprüfen, ohne einen Webserver zu verwenden. Das funktioniert nur
für statische Dateien, kann aber in einigen Fällen nützlich sein.
Checkbot-Datei:///var/www/documents/
VORAUSSETZUNGEN
Dieses Skript verwendet die "LWP"-Module.
VORAUSSETZUNGEN
Dieses Skript kann E-Mails senden, wenn "Mail::Send" vorhanden ist.
Verwenden Sie checkbotp online mit den onworks.net-Diensten