10.4. Fortgeschrittene Konfigurationsmöglichkeiten

Wie Sie vielleicht schon bemerkt haben: die HTTP-API in WordPress ist sehr umfangreich und erlaubt daher vielseitige Anwendungen.

HTTP-API Hooks

Wenn Sie sich den Quellcode der API schon einmal näher angesehen haben, konnten Sie sicherlich feststellen, dass WordPress auch hier wieder regen Gebrauch von Hooks macht. Einige davon möchte ich Ihnen zusammen mit ihren Parametern hier aufzeigen:

Dieser Inhalt ist nur eingeschränkt verfügbar. Melden Sie sich vorher an.

Beispiel 1: Sperren von Domains

Dieser Inhalt ist nur eingeschränkt verfügbar. Melden Sie sich vorher an.

Beispiel 2: Entfernen der Transportmöglichkeit ‚CURL‘

Dieser Inhalt ist nur eingeschränkt verfügbar. Melden Sie sich vorher an.

Verbindungen über Proxies

Ein Proxy ist eine Art Kommunikationsvermittler in einem Computernetzwerk. Er nimmt eine Anfrage entgegen um dann über seine eigene Adresse eine Verbindung zur Gegenstelle aufzunehmen.

WordPress unterstützt auch Proxies. Im nachfolgenden möchte ich aufzeigen, wie die Konfiguration funktioniert.

Proxy-Verbindung herstellen

Folgende PHP-Konstanten müssen in der wp-config.php-Datei definiert werden:

<?php
define( 'WP_PROXY_HOST', 'proxy.mustermann.com' );
define( 'WP_PROXY_PORT', '3128' );
define( 'WP_PROXY_USERNAME', 'benutzer01 );
define( 'WP_PROXY_PASSWORD', 'pass-1-5' );
?>

Beachten Sie:

  • WP_PROXY_USERNAME und WP_PROXY_PASSWORD müssen nur angegeben werden, wenn der Proxy eine Authentifizierung benötigt.
  • Mit WP_PROXY_BYPASS_HOSTS kann eine, durch Komma getrennte, Liste von Adressen angegeben werden, die nicht durch den Proxy laufen sollen. localhost sowie die eigene Blog-Hostadresse müssen nicht angegeben werden, denn Anfragen dorthin werden niemals durch den Proxy geschickt.

‚Umgehungen‘ Festlegen

Ein Proxy kann auch umgangen werden. Und zwar durch das Festlegen einer Liste von erlaubten Hosts (ebenfalls in der wp-config.php):

<?php
define( 'WP_PROXY_BYPASS_HOSTS', '*.mustermann.com, noproxy.mustermann.de' );
?>

WP_PROXY_BYPASS_HOSTS erlaubt die Angabe von so genannten Wildcards. Die Angabe von *.mustermann.com sorg zum Beispiel dafür, dass alle Adressen die mit .mustermann.com enden nicht durch den Proxy geschleift werden.

Verbindungen sperren

Auch lassen sich sofort alle Verbindungen durch die HTTP-API sperren. Damit simuliert man eine Firewall die mit einer Whitelist arbeitet. Das heißt: es werden erst einmal alle Verbindungen gesperrt bis auf diejenigen, die in der Whitelist stehen.

Alle Verbindungen sperren:

<?php
define( 'WP_HTTP_BLOCK_EXTERNAL', true );
?>

Whitelist anlegen:

<?php
define( 'WP_ACCESSIBLE_HOSTS', 'api.wordpress.org, *.mustermann.com' );
?>

Auch WP_ACCESSIBLE_HOSTS erlaubt die Angabe von Wildcards. Die Angabe von *.mustermann.com sorg zum Beispiel dafür, dass alle Adressen die mit .mustermann.com durch den Proxy geschleift werden dürfen. Natürlich angenommen der Proxy wurden ebenso konfiguriert.

Hinweis

Sie sollten zumindest die Verbindung zu api.wordpress.org erlauben um die jeweils aktuellsten Upgrades, Plugin- und Theme-Updates zu kommen.