Handbuch:Kurze URL

From MediaWiki.org
Jump to navigation Jump to search
This page is a translated version of the page Manual:Short URL and the translation is 74% complete.
Other languages:
Deutsch • ‎English • ‎español • ‎français • ‎italiano • ‎polski • ‎português • ‎português do Brasil • ‎русский • ‎中文 • ‎日本語 • ‎한국어

Kurze URLs oder URL Rewrites verbergen die Datei-Erweiterung von PHP in der Seitenadresse. Nehme dir ein paar Minuten Zeit, um eine stabile URL-Struktur für deine Webseite auszuarbeiten, bevor du anfängst. Das veringert spätere Probleme.

Einleitung

Ziel

MediaWikis standardmäßiger Installations-Pfad sieht für gewöhnlich ähnlich wie folgt aus:

/var/www/localhost/htdocs/mediawiki/w (wenn vom Root-User installiert)
/home/johndoe/public_html/mediawiki/w (wenn beim Shared-Hosting-Provider installiert)

MediaWikis standardmäßige Seitenadressen ähneln diesen Beispielen:

http://example.org/w/index.php/Page_title (aktuelle Versionen von MediaWiki, ohne CGI-Unterstüzung)
http://example.org/w/index.php?title=Page_title (aktuelle Versionen von MediaWiki, mit CGI-Unterstüzung)

Mit den Methoden, wie sie auf dieser Seite umrissen werden, können wir MediaWiki so konfigurieren, dass es in etwa so aussieht:

http://example.org/wiki/Page_title Das ist die am häufigsten verwendete Konfiguration, wie sie auch von Wikipedia verwendet wird. Jedoch ist sie nicht der Standard, da sie Modifikationen am Server erfordert.
http://example.org/view/Page_title
http://wiki.example.org/view/Page_title
http://example.org/Page_title
http://wiki.example.org/Page_title

Vor- und Nachteile

  • Vorteil: Short URLs verstecken einige technischen Details vom Endnutzer, was wünschenswert für Seitenbetreiber sein kann. Unter anderem können sie konstant gehalten werden, auch wenn sich die darunter liegende Software ändern sollte. (Siehe oben für den Unterschied zwischen MediaWikis standardmäßiger URL-Struktur mit aktiviertem CGI und ohne CGI.) Sie sind für Besucher auch besser zu lesen, zu merken und einzugeben. Darüber hinaus wirken sich Short URLs gegenüber Standard-URLs positiv auf die Suchmaschinenoptimierung aus, da URLs, die kein ? enthalten, von Suchmaschinen bei der Berechnung des Seitenranks bevorzugt werden.
  • Nachteil: Sie erfordern eine Konfiguration; daher könnte es, abhängig von der Hosting-Umgebung, die du benutzt, schwierig sein, sie nachzuahmen. Jedoch sollten die meisten zahlpflichtigen Webhosting-Dienste diese Funktion unterstützen, weil jeder weit verbreitete Webserver so konfiguriert werden kann, dass er Short URLs verwendet. Jeder Host, der dir diese Funktion nicht anbietet, ist dein Geld nicht wert.

Anleitungen

Unsere offiziellen Anleitungen zur Short URL-Konfiguration für unterschiedliche Webserver. Wähle die Konfiguration deines Webservers aus dieser Liste. Falls du nicht weißt, welche Server-Software du nutzt, dann ist es höchstwahrscheinlich Apache.

Andere How-To Mini-Anleitungen

Diese Anleitungen sind veraltet und insgesamt eine schlechte Wahl. Sie werden nach und nach gelöscht, sobald unsere obenstehenden offiziellen Anleitungen für die verschiedenen Webserver erstellt werden.

Jeder ist willkommen, eine How-to-Lösungsseite zu erstellen und sie in die untenstehende Liste einzutragen. Bitte verwende einen sinnvollen Namen für die Seite, der zu den unten aufgeführten Namen passt. Wenn jede einzelne Lösung ihre eigene Seite hat, können Leser komplexe Varianten überspringen, die sie nicht brauchen. „Fasse dich kurz“. Bitte schreibe in einem kurzgefassten, verständlichen Stil mit einer separaten Seite für jede unterschiedliche Lösung.

Um anderen zu helfen, herauszufinden, welche Short URL-Methoden wirklich funktionieren, bearbeite bitte die Seite und erhöhe nach jedem Ausprobieren einer einzelnen Methode die Zahlen „worked“ oder „didn't work“ für die entsprechende Anleitung und erstelle eine kurze (oder lange, deine Wahl) Beschreibung, was schiefgelaufen ist, indem du auf den Link auf deiner Nummer klickst.

URL wie - example.com/wiki/Seitentitel

Aktionen wie Bearbeiten, Versionsgeschichte, etc. werden immer noch index.php beinhalten, außer $wgActionPaths sind definiert.

Root-Zugriff

Diese Methoden erfordern einen Zugriff auf die Serverkonfiguration. Wenn du bei einem geteilten Betreiber bist, wirst du diesen wahrscheinlich nicht haben. In diesem Fall musst du eine Methode wählen, die keinen Root-Zugriff erfordert. Du kannst direkt zum „MediaWiki ShortURL Builder“-Werkzeug gehen und dort den angezeigten Anweisungen folgen. Wähle „I don't have root access“, nachdem du die URL zu deinem Wiki eingegeben hast.

* Abyss Web Server X2

(Für Hilfestellungen zu Apache, siehe den Link im Abschnitt Anleitungen.)

URL wie - example.com/Seitentitel

Warnung Warnung: This is probably only appropriate if your domain is only being used for MediaWiki, but even then it is typically not recommended, as this setup can leave some titles unusable. See Manual:Wiki in site root directory and Cool URIs don't change.

Wie man URLs im Format example.com/Seitentitel erstellt:

URL wie - wiki.example.com/Seitentitel

Warnung Warnung: This is probably only appropriate if your domain is only being used for MediaWiki, but even then it is typically not recommended, as this setup can leave some titles unusable. See Manual:Wiki in site root directory and Cool URIs don't change.

Wie man URLs im Format wiki.example.com/Seitentitel erstellt:

Fehlerbehebung

Problem mit Et-Zeichen (&)

Das Et-Zeichen-Problem tritt dann auf, wenn im Seitentitel Symbole (wie z. B. &, ?, #, + und /) auftauchen, die, obwohl sie im Link richtig codiert werden, nicht korrekt von mod_rewrite an das Skript weitergereicht werden. Dies manifestiert sich in 404-Seite nicht gefunden-Fehlermeldungen, weil der Titel an der Stelle des speziellen Zeichens abgeschnitten wird. Zum Beispiel liefert das Klicken auf einen Link zu „Hans & Marias Seite“ eine 404-Fehlermeldung, weil MediaWiki nach einer Seite namens „Hans “ sucht.

Dies kommt dadurch, dass Et-Zeichen in Langformnamen wie Query String-Separatoren behandelt werden und nie die PHP-Laufzeitumgebung erreichen würden. Verursacht wird das durch einen alten und problematischen Fehler von mod_rewrite. [1]

Lösung:

Dieser Fehler wird durch den Bereich ?title=$1 in Rewrite Rules wie /index.php?title$1 verursacht, was keinstenfalls vonnöten, stattdessen aber schädlich ist. MediaWiki empfängt die Pfade direkt durch die REQUEST_URI, schreibe daher alles nach /index.php um.

Keine Skins

With Ubuntu 8.10 and MediaWiki 1.11.2 (and maybe later versions) if you use the MediaWiki sanctioned directions your skins may fail to load. To fix this, create a symbolic link in /var/www pointing to /var/lib/mediawiki with the value of $wgScriptPath in LocalSettings.php. If, for example, $wgScriptPath is set to "/w" then you need to run the command "sudo ln -s /var/lib/mediawiki /var/www/w".

Alternatively, try setting $wgLoadScript to the original file. If you source url is /wiki with the short url /w, set it to /wiki/load.php.

Chache leeren

If you notice that your changes to $wgArticlePath in LocalSettings.php are not being reflected in mysite.com/wiki/Main_Page, it may be due MediaWiki's caching of the links according to previous settings.

Go to mysite.com/wiki/Main_Page?action=purge to force MediaWiki to regenerate the cached links.

Was ebenfalls möglich ist:

  1. execute the MySQL query "TRUNCATE objectcache;", or
  2. Ensure $wgCacheEpoch is updated (if $wgInvalidateCacheOnLocalSettingsChange is enabled all you have to do is edit LocalSettings.php to purge it)

Leite Besucher deiner Domain zu deinem Wiki weiter

Our official guides for short url configuration include recommendations on how to point the root of your site to your wiki using your short url config.

For example our Apache guide recommends using this to point your site root to your wiki:

RewriteRule ^/*$ %{DOCUMENT_ROOT}/w/index.php [L]

Beachte, dass wir keine HTTP-Weiterleitungen zu deinem Wiki-Pfad oder direkt zur Hauptseite empfehlen. As redirecting to the main page directly will hard-code variable parts of your wiki's page setup into your server config. Und das Weiterleiten zum Wiki-Pfad wird in zwei Weiterleitungen resultieren. Simply rewrite the root path to MediaWiki and it will take care of the 301 redirect to the main page itself.

Wenn du virtuelle Hosts benutzt, platziere die Rewrite Regeln in die Deklaration des virtuellen Hosts!

Ein Wiki von /wiki zu /w verschieben

A common beginner's mistake is to install MediaWiki itself (the source code, not the short url) in /wiki instead of /w. Once installed they would realize the mistake when trying to configure Short URLs (which would become difficult as the virtual path then conflicts with the real path).

There is a manual for moving a wiki in general, however that is too complicated if all you need is to change the installation directory (and stay on the same server, same database and same hostname).

Was du zu tun hast:

  • Backup LocalSettings.php and any other config files you may have created (such as your .htaccess).

Benenne den Installationsordner von MediaWiki von deinem Server von /wiki zu /w um.

  • Set $wgScriptPath in LocalSettings.php to "/w" and remove (or comment out) any definition of $wgArticlePath (this variable will be changed again when setting up Short URLs, further on)
  • Zu diesem Zeitpunkt sollte dein Wiki unter example.org/w normal funktionieren.
  • Now go through the regular guide to set up short URLs
  • Perform a few tests on your wiki to make sure nothing is broken. Bearbeite eine Seite, besuche verschiedene Seiten, etc. If anything seems abnormal, revert the changes by restoring your backup of LocalSettings.php and other relevant files you might have changed during configuration of short URLs and rename your folder back to /wiki.

Note for shared hosting users: Many shared hosting plans offer an application manager to automatically Install, Update and Backup applications such as MediaWiki. If your plan has this and if you want to keep using these features, you should contact their tech support and let them know you just manually changed your MediaWiki installation directory.

Tricks

Siehe auch

Externe Verweise

Einzelnachweise

  1. Bugzilla mod_rewrite for ampersand bug, unvollständig behoben für manche Benutzer, aber erst nach 13 Jahren