Erweiterung:UrlShortener

This page is a translated version of the page Extension:UrlShortener and the translation is 100% complete.
Nicht zu verwechseln mit Extension:ShortUrl.
MediaWiki-Erweiterungen
UrlShortener
Freigabestatus: stabil
Einbindung Spezialseite , API , MeinWiki
Beschreibung Provides a basic URL shortening service
Autor(en) YuviPandaDiskussion
Letzte Version Continuous updates
MediaWiki 1.25+
PHP 5.4+
Datenbankänderungen Ja
Tabellen urlshortcodes
Lizenz Apache License 2.0
Herunterladen
Hilfe Help:Extension:UrlShortener/de
  • $wgUrlShortenerAllowArbitraryPorts
  • $wgUrlShortenerAllowedDomains
  • $wgUrlShortenerEnableQrCode
  • $wgUrlShortenerQrCodeShortenLimit
  • $wgUrlShortenerUrlSizeLimit
  • $wgUrlShortenerApprovedDomains
  • $wgUrlShortenerEnableSidebar
  • $wgUrlShortenerIdMapping
  • $wgUrlShortenerAltPrefix
  • $wgUrlShortenerTemplate
  • $wgUrlShortenerServer
  • $wgUrlShortenerReadOnly
  • $wgUrlShortenerIdSet
  • urlshortener-manage-url
  • urlshortener-create-url
  • urlshortener-view-log
Vierteljährliche Downloads 8 (Ranked 108th)
Public wikis using 872 (Ranked 276th)
Übersetze die UrlShortener-Erweiterung, wenn sie auf translatewiki.net verfügbar ist
Probleme Offene Aufgaben · Einen Fehler melden

Die UrlShortener Erweiterung beinhaltet einen einfachen URL-Kürzungsservice als eine MediaWiki Erweiterung. Es wird einige Änderungen an der Konfiguration Ihres Webservers erfordern, um ordnungsgemäß zu funktionieren. Es wurde ursprünglich entwickelt, um den URL Shortener RfC umzusetzen.

Für eine Anleitung, den UrlShortener mit Wikimedia-Projekten zu nutzen, siehe die Informationen unter m:Wikimedia URL Shortener.

Installation

  • Die Erweiterung herunterladen und die Datei(en) in ein Verzeichnis namens UrlShortener im Ordner extensions/ ablegen.
    Entwickler und Code-Beitragende sollten stattdessen die Erweiterung von Git installieren, mit:cd extensions/
    git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/UrlShortener
  • Folgenden Code am Ende deiner LocalSettings.php -Datei einfügen:
    wfLoadExtension( 'UrlShortener' );
    
  • Führe das Aktualisierungsskript aus, welches automatisch die notwendigen Datenbanktabellen erstellt, die diese Erweiterung braucht.
  • Konfiguriere nach Bedarf.
  • Passe nach Bedarf an.
  •   Erledigt – Navigiere zu Special:Version in deinem Wiki, um zu überprüfen, ob die Erweiterung erfolgreich installiert wurde.


Vagrant-Installation:

  • Wird Vagrant benutzt, ist mit vagrant roles enable urlshortener --provision zu installieren
Damit //example.com/r/foo ordnungsgemäß funktioniert, müssen Sie die Umleitungsregeln für Ihren Webserver neu schreiben. Beispielregeln für Apache sind in der Erweiterung enthalten.

Konfiguration

LocalSettings.php

URL-Routing-Konfiguration:

Konfiguriert die Vorlage, die bei der Erstellung der verkürzten URL genutzt werden soll. Die Verwendung dieser Funktion erfordert mod_rewrite (oder ein Äquivalent). Bei false (Standard), verwenden die kurzen URLs die nicht so kurze /wiki/Special:UrlRedirector/5234, da sie unabhängig von der Webserverkonfiguration funktioniert.

Wenn Sie Ihre kurzen URLs in Form von example.com/r/5234 wünschen, setzen Sie:

$wgUrlShortenerTemplate = '/r/$1';

Kurze Domänenname:

Wenn Sie einen eigenen kurzen Domainnamen haben, können Sie wie folgt setzen:

$wgUrlShortenerServer = "short.wiki";

Wenn es auf false (Standard) eingestellt ist, wird $wgServer verwendet.

Globale Datenbank:

Setzen Sie diese auf den Namen einer Datenbank, wenn Sie eine zentrale Datenbank für Ihre Wiki-Farm verwenden möchten. Wenn sie auf false (Standard) eingestellt ist, wird sie die normale Datenbank des Wiki verwenden.

$wgUrlShortenerDBName = false;

Wenn die Datenbank auf einem externen Cluster ist, müssen Sie diesen ebenfalls konfigurieren.

$wgUrlShortenerDBCluster = false;

Erlaube willkürliche Ports:

Standardmäßig werden nur URLs mit den Ports 80 und 443 akzeptiert und automatisch entfernt. Wenn Ihr Wiki mit einem benutzerdefinierten Port eingerichtet ist, setzen Sie dies auf true, um URLs mit beliebigen Ports zu verkürzen.

$wgUrlShortenerAllowArbitraryPorts = true;

AllowedDomains Regex:

Konfigurert die zulässigen Domains, für die Benutzer Links einreichen können. Das ist eine Array von regulären Ausdrücken. Wenn false (Standard) eingestellt wird, wird eine Berechtigungsliste für die aktuelle Domain (mit Hilfe von $wgServer) eingerichtet.

$wgUrlShortenerAllowedDomains = false;

Um beispielsweise nur Links zu wikipedia.org oder wikimedia.org zuzulassen, kann folgendes verwendet werden:

$wgUrlShortenerAllowedDomains = array(
	'(.*\.)?wikimedia\.org',
	'(.*\.)?wikipedia\.org',
);

Wenn wir jede Domäne erlauben wollen:

$wgUrlShortenerAllowedDomains = array( '.*' );

ApprovedDomains Dokumentation:

Dies ist eine Array der zulässigen Domains, aber in einer von Menschen lesbaren Form. Es wird auf Special:UrlShortener angezeigt.

Wenn es auf false (Standard) eingestellt ist, wird eine normalisierte Version von $wgServer verwendet.

$wgUrlShortenerApprovedDomains = false;

Wenn Sie nur wikipedia.org und wikimedia.org im obigen Beispiel erlauben:

$wgUrlShortenerApprovedDomains = array(
	'*.wikimedia.org',
	'*.wikipedia.org',
);

Kurzcode Zeichensatz:

Wenn Sie den Zeichensatz anpassen möchten, die die Kurzcodes verwenden, können Sie diese Einstellung überschreiben. Dies sollte nur einmal während der Einrichtung durchgeführt werden. Wenn danach eine Änderung vorgenommen wird, werden alle vorhandenen kurzen URLs an das falsche Ziel geleitet.

$wgUrlShortenerIdSet = '23456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz$';

Das erste Zeichen in der Liste wird als führende Null behandelt; keine Kurzcodes, die mit diesem Zeichen beginnen, werden erstellt und es wird ignoriert, wenn es am Anfang des Kurzcodes in einer URL verwendet wird (z.B. https://w.wiki/22222222w ist gleich https://w.wiki/w).

Nur-Lesen-Modus:

Setzen Sie $wgUrlShortenerReadOnly auf true, um zu verhindern, dass Benutzer neue kurze URLs erstellen. Dies ist hauptsächlich als Hack während der Bereitstellung auf Wikimedia-Sites gedacht und wird entfernt, sobald es nicht mehr benötigt wird.

QR-Codes:

MediaWiki Version:
1.41

Ab der UrlShortener-Version 1.1.0 können Sie das Teilen von QR-Code ermöglichen. Hierbei gibt es zwei Konfigurations-Einstellungen. Eine ist lediglich, QR-Codes teilen zu können.

$wgUrlShortenerEnableQrCode = true;

Beachten Sie, dass derzeit $wgUrlShortenerEnableSidebar auch eingestellt sein muss, wenn Sie möchten, dass der "QR-Code runterladen"-Link in der Seitenleiste angezeigt werden soll.

Der Link, auf den die QR-Codes hinweisen, wird nur verkürzt, wenn er sehr lang ist. Dies liegt daran, dass Benutzer bei dem Scannen eines QR-Codes lieber eine vertraute Domain sehen würden, aber wenn die URL zu lang ist, wird die Pixeldichte des QR-Codes zu schwierig zu scannen. Sie können die Länge der URLs steuern, die, wenn sie überschritten werden, zuerst verkürzt werden, bevor ein QR-Code erstellt wird. Die Zahl hier bezieht sich auf die Anzahl der Bytes, nicht auf Zeichen.

$wgUrlShortenerQrCodeShortenLimit = 200;


VirtualHost oder .htaccess

To have truly short URLs, you will need to set up rewrite rules, using mod_rewrite or something similar. An example of what to put in your .htaccess file comes with the extension. If our template was set up to /r/$1, then we could use:

RewriteEngine On
RewriteRule ^r/(.*)$ /w/index.php?title=Special:UrlRedirector/$1 [PT]

If you are using nginx, you can add the following within a server { definition.

location ~ ^/r/(.*) {
	return 301 /w/index.php?title=Special:UrlRedirector/$1;
}

This assumes your $wgScriptPath is set to /w.

API

This extension provides the API module action=shortenurl to get the shortened url for a given url, creating it if does not exist already. See the API documentation here: https://meta.wikimedia.org/w/api.php?action=help&modules=shortenurl.

  • url - URL to shorten.

Antwort:

{
    "shortenurl": {
        "shorturl": "http://127.0.0.1:8080/s/3"
    }
}

Siehe auch