Skip to the content
Documentation
Help Start
Reading in:
  • German: 9,059 of 9,059 pages
About the help in other languages
All help pages

URL-Zuordnungen importieren und exportieren

Wenn eine Website zu Exponential umzieht oder eine neue Struktur bekommt, müssen ihre alten Adressen weiter funktionieren: Links auf anderen Websites, Lesezeichen und Suchergebnisse zeigen auf sie. Exponential 6.0.15…

Download as PDF

Address: https://doc.exponential.earth/exphelp/viewer/features/6.0/url-map-import-export.md

On this page

This page is a translation. Read the English original

URL-Zuordnungen importieren und exportieren

Wenn eine Website zu Exponential umzieht oder eine neue Struktur bekommt, müssen ihre alten Adressen weiter funktionieren: Links auf anderen Websites, Lesezeichen und Suchergebnisse zeigen auf sie. Exponential 6.0.15 nimmt diese Adressen als URL-Zuordnung auf, eine Datei, die jede alte Adresse und ihr neues Ziel auflistet. Die ganze Datei wird in einem Schritt importiert, mit einer Vorschau vorab, und der ganze Import lässt sich wieder zurücknehmen. Ebenso schreibt Exponential die eigenen Weiterleitungen der Website als Datei heraus, für einen Webserver oder als Sicherung.

Vor 6.0.15 musste jeder globale URL-Alias (URL-Übersetzer) und jeder URL-Platzhalter einzeln in der Administration angelegt werden, und einen Export gab es nicht.

Funktionen 6.0 · Tutorial: URLs migrieren · Beispieldateien: URL-Zuordnungen als Beispiele

Was es tut

  • Importiert eine URL-Zuordnung in den URL-Übersetzer, die URL-Platzhalter und eine neue Liste von Weiterleitungen, als ein Stapel.
  • Zeigt eine Vorschau jeder Zeile, bevor etwas geschrieben wird: was neu ist, was sich ändern würde und was sich nicht importieren lässt und warum. Ein Probelauf prüft jede Zeile gegen die Website und schreibt nichts.
  • Macht einen Import als Ganzes rückgängig: Jeder angelegte Eintrag wird entfernt, jeder ersetzte wiederhergestellt.
  • Exportiert die globalen URL-Aliase, Platzhalter und Weiterleitungen der Website in jedem Format, das er liest. Ein Export, der in dieselbe Website importiert wird, ändert nichts.
  • Leitet alte Adressen mit Abfrage weiter, etwa /index.php?id=12 eines alten CMS, auf die neue Seite.
  • Lässt vorübergehende Weiterleitungen vorübergehend (302, 303, 307), damit Suchmaschinen die alte Adresse behalten, wo das gemeint ist.
  • Hilft beim Aufbau der Zuordnung: beginnt sie mit der Sitemap der alten Website oder mit den Adressen, die Besucher nicht finden (dem 404-Protokoll), schlägt für jede alte Adresse die neue Seite vor und prüft die alten Adressen nach dem Import auf der Website.

Das geht in der Administration (auf den Seiten URL-Übersetzer und URL-Platzhalter) und auf der Kommandozeile.

Formate

FormatImportExport
CSV (auch mit ; oder Tabulator getrennt, wie Tabellenprogramme es speichern)jaja
JSONjaja
Excel .xlsxjaja
LibreOffice Calc .odsjaja
Apache-Regeln (Redirect, RedirectMatch, RewriteRule mit RewriteCond)jaja
nginx-Regeln (location =, return, rewrite, map)jaja

Das Format wird am Namen oder am Inhalt der Datei erkannt. Eine Tabelle oder CSV-Datei hat die Spalten old_url, new_url, kind, siteaccess, language, note und status; nur die ersten beiden sind nötig:

old_url,new_url
/about-us.html,/fitness
/recipes/hummus.html,/recipes/home-made-hummus
/old-recipes/*,/recipes/{1}

Jede Einzelheit jedes Formats, auch was aus einer Umschreibregel werden kann und was nicht, steht in der Spezifikation Die Dateiformate für URL-Zuordnungen.

Alte und neue Adressen

  • Die alte Adresse ist ein Pfad (/about-us.html) oder eine vollständige Adresse (https://www.alte-seite.de/about-us.html). Eine vollständige Adresse wählt den Siteaccess über ihren Host. Einen alten Host, für den diese Installation nicht antwortet, ordnen Sie in der Importseite einem Siteaccess zu, oder auf der Kommandozeile mit --host=www.alte-seite.de=site.
  • Die neue Adresse ist ein Pfad dieser Website (/recipes), ein Knoten (node:163, der der Seite folgt, wenn sie verschoben wird) oder eine vollständige Adresse auf einer anderen Website.
  • Ein * in der alten Adresse macht einen Platzhalter: {1} in der neuen Adresse steht für das, worauf der erste * gepasst hat.

Arten und Status

Die Spalte kind entscheidet, was aus einer Zeile wird. Ist sie leer, wird eine Zeile mit * ein weiterleitender Platzhalter und jede andere Zeile eine dauerhafte Weiterleitung.

ArtWas Besucher bekommenGespeichert als
redirectEine dauerhafte Weiterleitung (301, oder 308 in der Spalte status)Ein globaler URL-Alias, der weiterleitet; eine Weiterleitung, wenn die alte Adresse eine Abfrage hat oder das Ziel auf einer anderen Website liegt
redirect-temporaryEine vorübergehende Weiterleitung (302, oder 303 oder 307 in status)Eine Weiterleitung
aliasDie neue Seite, unter der alten Adresse angezeigt, ohne WeiterleitungEin globaler URL-Alias
wildcard-forwardEine dauerhafte Weiterleitung für jede passende AdresseEin URL-Platzhalter (weiterleitend)
wildcard-forward-temporaryEine vorübergehende Weiterleitung (302) für jede passende AdresseEin URL-Platzhalter (vorübergehende Weiterleitung)
wildcard-directDie neue Seite unter der alten Adresse, für jede passende AdresseEin URL-Platzhalter (direkt)

Globale URL-Aliase und Platzhalter sind dieselben Einträge, die Sie von Hand anlegen würden; sie erscheinen auf den Seiten URL-Übersetzer und URL-Platzhalter und lassen sich dort ändern. Weiterleitungen, die ein Alias nicht aufnehmen kann (eine alte Adresse mit Abfrage, ein vorübergehender Status, ein Ziel auf einer anderen Website), kommen in eine eigene Liste, Weiterleitungen.

Weiterleitungen mit Abfrage

Alte Content-Management-Systeme hatten oft Adressen wie /index.php?id=12 oder /shop.php?category=3. Eine Zeile mit einer solchen alten Adresse ist eine Weiterleitung der vollständigen Anfrage:

old_url,new_url
/index.php?id=12,/recipes
/shop.php?category=3,/recipes/kale-salad

Diese Weiterleitungen werden bei jeder Anfrage zuerst geprüft, vor den URL-Aliasen und Platzhaltern. Die Reihenfolge der Parameter zählt nicht (?b=2&a=1 ist ?a=1&b=2); eine andere Abfrage oder keine passt nicht. Die alte Abfrage wird nicht an die neue Adresse weitergegeben.

Vorschau, Konflikte und Probelauf

Jede Zeile einer Datei wird vor dem Import geplant und bekommt einen dieser Zustände:

ZustandBedeutungImportiert
NeuAn der alten Adresse ist noch nichtsja
GeändertAn der alten Adresse ist ein anderer Eintragnur, wenn Sie bestehende Einträge ersetzen lassen
UnverändertDerselbe Eintrag ist schon danein
DoppeltEine frühere Zeile der Datei hat dieselbe alte Adresse; die erste zähltnein
KonfliktDie alte Adresse ist eine Seite dieser Website, eine Adresse des Systems (etwa /user/login) oder die Startseitenie
Ziel fehltDie neue Adresse gibt es auf dieser Website nichtnein
Unbekannter HostDer alte Host gehört nicht zu dieser Installationnein, bis der Host einem Siteaccess zugeordnet ist
Nicht importierbarDie Zeile selbst ist fehlerhaft; ihre Hinweise sagen, warumnein

Ein Probelauf geht jede Zeile so gegen die Website durch, wie der Import es täte, zählt, was er tun würde, und schreibt nichts.

Rückgängig machen

Jeder Import wird als ein Stapel festgehalten, mit jedem geschriebenen Eintrag, wie er vorher und nachher war. Rückgängig machen entfernt, was der Import angelegt hat, und stellt wieder her, was er ersetzt hat, das Letzte zuerst. Ein Eintrag, den jemand nach dem Import geändert hat, bleibt erhalten, außer Sie lassen auch ihn zurücknehmen. Die Importhistorie listet, wer welche Datei wann importiert hat, mit den Zahlen.

Export

Ein Export schreibt die globalen URL-Aliase der Website (auf Wunsch auch die eigenen Aliase von Seiten, als node:<id>), die Platzhalter und die Weiterleitungen in eines der Formate oben. Nutzen Sie ihn als Sicherung vor einem großen Import, um die Zuordnung in einer Tabelle zu bearbeiten und wieder zu importieren, oder um die Weiterleitungen dem Webserver zu übergeben: Die Apache- und nginx-Exporte sind Regeln, die der Server selbst beantwortet, ohne PHP.

Helfer für eine Migration

Vier Helfer bauen und prüfen eine Zuordnung, auf der Kommandozeile und als Reiter der Importseite. Keiner von ihnen importiert etwas; sie schreiben eine Zuordnung, die Sie bearbeiten und importieren können.

HelferReiter der ImportseiteWas er liefert
exp:url:from-sitemapAus der alten SitemapJede Adresse der Sitemap der alten Website (auch eines Sitemap-Index und .gz) oder einer Crawl-Liste, einmal, als Zeile mit leerer neuer Adresse. Nur der eigene Host der Sitemap, außer mit --any-host (Auch die Adressen anderer Hosts).
exp:url:from-404Aus dem 404-ProtokollDie Adressen, die 404 oder 410 geantwortet haben, die häufigsten zuerst, mit der Zahl der Aufrufe im Hinweis. Dateien wie Bilder und Bots bleiben außen vor. --min-hits, --since; --log liest stattdessen ein Zugriffsprotokoll eines Webservers.
exp:url:suggestZiele vorschlagenFür jede Zeile ohne neue Adresse die Seiten der Website, die der alten Adresse am ähnlichsten sind, bewertet mit 0 bis 100; --fill-above=85 trägt die beste in die Zeile ein, die übrigen kommen in ihren Hinweis.
exp:url:testDie alten Adressen prüfen, nach einem ImportFragt jede alte Adresse auf einer Website an, folgt den Weiterleitungen und meldet jede Zeile als landed, wrong-status, wrong-target, not-redirected oder error; Exit-Code 1, wenn eine Zeile nicht angekommen ist.

Das eigene 404-Protokoll von Exponential (var/log/404.log, site.ini [RequestLogSettings] NotFoundLog, standardmäßig an) verbirgt die Werte einer Abfrage als ***. exp:url:from-404 liefert daher nur Pfade; alte Adressen mit Abfrage kommen aus der Sitemap oder aus einem Zugriffsprotokoll, das --log liest. Der Reiter Aus der alten Sitemap ruft nur Adressen öffentlicher Hosts ab, nie eine aus dem eigenen Netz des Servers. In der Administration prüft Prüfen die ersten 500 alten Adressen unter der Website-Adresse des Siteaccess des Imports (site.ini [SiteSettings] SiteURL); exp:url:test --base=<adresse> prüft jede Website, auch eine Staging-Website.

In der Administration

Auf den Seiten URL-Übersetzer und URL-Platzhalter (Reiter Setup) führen die Schaltflächen Importieren, Formate und Beispiele, Exportieren, Importhistorie und Weiterleitungen zu den Seiten:

SeiteAdresseWas sie tut
Importieren/content/urlimportReiter Eine Datei hochladen, Aus der alten Sitemap, Aus dem 404-Protokoll und Ziele vorschlagen. Eine Datei hochladen oder Zeilen einfügen, Siteaccess und Sprache reiner Pfade wählen und was mit bestehenden Einträgen geschieht, alte Hosts zuordnen; dann die Vorschau mit einem Filter je Zustand, einem Haken je Zeile, Probelauf, dem Plan als CSV oder JSON, Importieren und nach dem Import Die alten Adressen prüfen
Formate und Beispiele/content/urlimport/(source)/examplesEine Beispieldatei jedes Formats (CSV, JSON, Excel, LibreOffice, Apache, nginx) mit dem, was sie zeigt, und den Zeilen, die sie ergibt, zum Kopieren, Herunterladen oder Im Import öffnen (die Textformate); die Spalten und die Arten. Die Dateien sind die URL-Zuordnungen als Beispiele, bei deutscher Oberfläche die deutschen
Importhistorie/content/urlimporthistoryJeder Import mit wer, wann, Datei und Zahlen; die Einträge eines Imports; Import rückgängig machen
Exportieren/content/urlexportFormat, Umfang, Siteaccess und Sprache; lädt die Datei herunter
Weiterleitungen/content/urlredirectsDie Weiterleitungen mit Abfrage oder Status, mit dem Entfernen einer oder der angehakten

Importieren und Rückgängigmachen fragen vorher nach Ihrer Identität („Identität bestätigen“). Die Seiten erklärt einzeln die Anleitung URL-Zuordnungen: Import, Export und Rückgängig.

Richtlinien

WasRichtlinie
Importieren, die Importhistorie, Rückgängig machencontent/urltranslator_import
Exportieren, die Liste der Weiterleitungencontent/urltranslator

Die Rolle Administrator hat beide. Geben Sie content/urltranslator_import nur den Personen, die die Adressen der Website in großer Zahl ändern dürfen: Ein Import kann Hunderte Adressen auf einmal weiterleiten. Jeder Import und jedes Rückgängigmachen steht im Audit-Protokoll (content.urlalias.import, content.urlalias.import_undo).

Auf der Kommandozeile

BefehlWas er tut
exp:url:importEine Datei planen und importieren; --dry-run schreibt nichts, --report=<datei> schreibt den Plan Zeile für Zeile
exp:url:exportDie URL-Zuordnung in eine Datei oder auf die Standardausgabe schreiben
exp:url:batchesDie Importe auflisten
exp:url:undoEinen Import rückgängig machen
exp:url:from-sitemapEine Zuordnung mit einer alten Sitemap (auch einem Sitemap-Index, .gz) oder einer Crawl-Liste beginnen
exp:url:from-404Eine Zuordnung mit den Adressen beginnen, die 404 geantwortet haben, die häufigsten zuerst
exp:url:suggestNeue Ziele für die Zeilen ohne eines vorschlagen, bewertet mit 0 bis 100
exp:url:testJede alte Adresse auf einer Website anfragen und prüfen, dass sie auf ihrer neuen Adresse ankommt
./console exp:url:import alte-site.csv -s site --dry-run --report=var/tmp/plan.csv
./console exp:url:import alte-site.csv -s site
./console exp:url:import alte-site.htaccess -s site --host=www.alte-seite.de=site
./console exp:url:batches
./console exp:url:undo 3
./console exp:url:export --output=var/tmp/url-map.xlsx
./console exp:url:export --kind=wildcard,redirect --format=nginx
./console exp:url:from-sitemap https://www.alte-seite.de/sitemap.xml --output=var/tmp/old-site.csv
./console exp:url:from-404 -s site --min-hits=3 --since=30d --output=var/tmp/not-found.csv
./console exp:url:suggest var/tmp/old-site.csv -s site --fill-above=85 --output=var/tmp/map.csv
./console exp:url:test var/tmp/map.csv --base=https://www.example.com -s site

Reine Pfade gehören zum Siteaccess, der mit -s angegeben ist (sonst zum Standard-Siteaccess). Mit --on-conflict=overwrite ersetzt ein Import die Einträge an Adressen, die schon einen haben; standardmäßig überspringt er sie. --output-format=json (Import, Export) und --format=json (Batches, Undo) geben maschinenlesbare Ausgaben.

Installation

Das Upgrade auf 6.0.15 legt drei Tabellen an, über den Upgrade-Schritt 6.0.15-url-map (./console exp:upgrade --apply). Solange der Schritt nicht gelaufen ist, ändert sich nichts, und ein Import wird mit einer Meldung abgelehnt, die den Schritt nennt. Was hinzukommt und was gleich bleibt: URL-Zuordnungen importieren und exportieren.

Verwandte Seiten

Something wrong on this page? Report an error

Documentation license

This documentation is free documentation, licensed under the GNU Free Documentation License 1.3 or later.

Exponential Copyright © 1998-2026 Exponential Foundation and 7x