Article ID: 114425, created on Jan 25, 2013, last review on Aug 12, 2014

  • Applies to:
  • Plesk 11.x for Linux

Versionshinweise

Das Problem wurde mit Parallels Plesk Panel 11.0.9 MU#15 behoben.
Bitte befolgen Sie die Anleitung in KB Nr. 114803.

Kennzeichen

Aus unbekannten Gründen leiten einige der Links auf PHP-Seiten zum Port 7080 oder 7081 weiter. Wenn ich z. B. einen Link wie

http://site.com/sub


klicke, werde ich hierhin weitergeleitet:
 
http://site.com:7080/sub

Ursache

Wenn Nginx auf dem Server aktiviert ist, sehen PHP-Servervariablen so aus:
_SERVER["HTTP_HOST"] existing.dom
_SERVER["SERVER_NAME"] existing.dom
_SERVER["SERVER_ADDR"] 127.0.0.1
_SERVER["SERVER_PORT"] 7080
or
_SERVER["SERVER_PORT"] 7081

Im Ergebnis wird auf Port 7080 oder 7081 weitergeleitet, wenn kein abschließender Slash am Ende der URL eingegeben wird. So führt z. B. der Code
<?php
header('Location: http://existing.dom/incorrect');
?>

den Browser zu http://existing.dom:7080/incorrect.

Lösung

Dieses Problem wird in einem der nächsten Updates behoben werden. Hierfür wird auch ein Wissensdatenbank-Artikel erstellt werden. Sie können Benachrichtigungen über neue Artikel über Parallels Plesk Panel Produkte abonnieren, wenn Sie über die Erstellung neuer Artikel informiert werden möchten.

Umgehungslösung 1

Fügen Sie in Ihrem PHP-Code immer einen Slash an das Ende URL. So sollte das oben stehende Beispiel eigentlich so aussehen:
<?php
header('Location: http://existing.dom/correct/');
?>

Umgehungslösung 2

Falls Sie eine Menge PHP-Code korrigieren müssten, können Sie es mit folgender alternativer Problemumgehung versuchen:
 
1.      Erstellen Sie ein Verzeichnis:
'/usr/local/psa/admin/conf/templates/custom/domain/'
und
kopieren Sie die Datei /usr/local/psa/admin/conf/templates/default/domain/domainVirtualHost.php in das neu erstellte Verzeichnis
 
2.      Editieren Sie das resultierende benutzerdefinierte Template, /usr/local/psa/admin/conf/templates/custom/domain/domainVirtualHost.php:

Verkürzen Sie Zeile 6 zu
ServerName "<?php echo $VAR->domain->asciiName ?>"

Der resultierende Unterschied sollte wie folgt sein:
# diff /usr/local/psa/admin/conf/templates/default/domain/domainVirtualHost.php /usr/local/psa/admin/conf/templates/custom/domain/domainVirtualHost.php
6c6
< ServerName "<?php echo $VAR->domain->asciiName ?>:<?php echo $OPT['ssl'] ? $VAR->server->webserver->httpsPort : $VAR->server->webserver->httpPort ?>"
---
> ServerName "<?php echo $VAR->domain->asciiName ?>"

Anschließend müssen Sie die Apache Konfiguration für die Domain neu konfigurieren:
# /usr/local/psa/admin/bin/httpdmng --reconfigure-domain <domain_name>

 

0a53c5a9ca65a74d37ef5c5eaeb55d7f 56797cefb1efc9130f7c48a7d1db0f0c a914db3fdc7a53ddcfd1b2db8f5a1b9c 29d1e90fd304f01e6420fbe60f66f838

Email subscription for changes to this article
Save as PDF