EXtplorer als 3rd-party Applikation: Unterschied zwischen den Versionen

Aus
KKeine Bearbeitungszusammenfassung
Zeile 2: Zeile 2:


Der eXtplorer ist ein schöner und relativ schneller Filemanager, wäre da nicht eine Einschränkung speziell für unsere DiskStation. Er funktioniert nicht ohne Anpassung, wenn man ihn per '''https://''' als 3rd-party App aufrufen möchte. Er geht bei einer HTTPS-Verbindung automatisch von Port '''443''' aus, welcher ja normalerweise der Standardport für HTTPS-Verbindungen ist. Da der System-Apache als HTTPS-Port nur '''5001''' akzeptiert, wird der Aufruf mit einer Fehlermeldung quittiert.
Der eXtplorer ist ein schöner und relativ schneller Filemanager, wäre da nicht eine Einschränkung speziell für unsere DiskStation. Er funktioniert nicht ohne Anpassung, wenn man ihn per '''https://''' als 3rd-party App aufrufen möchte. Er geht bei einer HTTPS-Verbindung automatisch von Port '''443''' aus, welcher ja normalerweise der Standardport für HTTPS-Verbindungen ist. Da der System-Apache als HTTPS-Port nur '''5001''' akzeptiert, wird der Aufruf mit einer Fehlermeldung quittiert.
Schnell geforscht und eine kleine Änderung am PHP-Script '''init.php''' durchgeführt.
Mit einer kleinen Änderung am PHP-Script '''init.php''' läßt sich der eXtplorer per '''https://''' als 3rd-party App aufrufen.


==Voraussetzungen==
==Voraussetzungen==
*Hinweise zur [[Integration von 3rd-party Applikationen]] beachten.
*Hinweise zur [[Integration von 3rd-party Applikationen]] beachten.
*Zugriff auf DS mittels Kommandozeile.
*Zugriff auf DiskStation mittels Kommandozeile.


==Installation==
==Installation==

Version vom 9. Oktober 2008, 19:31 Uhr

Einleitung

Der eXtplorer ist ein schöner und relativ schneller Filemanager, wäre da nicht eine Einschränkung speziell für unsere DiskStation. Er funktioniert nicht ohne Anpassung, wenn man ihn per https:// als 3rd-party App aufrufen möchte. Er geht bei einer HTTPS-Verbindung automatisch von Port 443 aus, welcher ja normalerweise der Standardport für HTTPS-Verbindungen ist. Da der System-Apache als HTTPS-Port nur 5001 akzeptiert, wird der Aufruf mit einer Fehlermeldung quittiert. Mit einer kleinen Änderung am PHP-Script init.php läßt sich der eXtplorer per https:// als 3rd-party App aufrufen.

Voraussetzungen

Installation

Zuerst ein Verzeichnis extplorer in /usr/syno/synoman/phpsrc/ erstellen und den Inhalt vom heruntergeladenen und entpacktem eXtplorer dort hinein kopieren.

mkdir /usr/syno/synoman/phpsrc/extplorer
  • Ein Verzeichnis extplorer in /usr/syno/synoman/webman/3rdparty erzeugen:
mkdir /usr/syno/synoman/webman/3rdparty/extplorer
  • Datei application.cfg im Verzeichnis extplorer erstellen:
vi /usr/syno/synoman/webman/3rdparty/extplorer/application.cfg
  • application.cfg mit folgenden Inhalt füllen:
text = eXtplorer
description = eXtplorer File Manager
type = embedded
path = /phpsrc/extplorer/index.php

Anpassung

Das Script init.php im Verzeichnis /usr/syno/synoman/phpsrc/extplorer/include/ mit einem Editor öffnen und folgende Änderungen durchführen:

von Zeile 69 bis 76 ersetzen wir:

if($_SERVER['SERVER_PORT'] == 443 ) {
    $GLOBALS["script_name"] = "https://".$GLOBALS['__SERVER']['HTTP_HOST'].$GLOBALS['__SERVER']["PHP_SELF"];
    $GLOBALS['home_url'] = "https://".$GLOBALS['__SERVER']['HTTP_HOST'].dirname($GLOBALS['__SERVER']["PHP_SELF"]);
}
else {
    $GLOBALS["script_name"] = "http://".$GLOBALS['__SERVER']['HTTP_HOST'].$GLOBALS['__SERVER']["PHP_SELF"];
    $GLOBALS['home_url'] = "http://".$GLOBALS['__SERVER']['HTTP_HOST'].dirname($GLOBALS['__SERVER']["PHP_SELF"]);
}

durch folgenden Code:

if (isset($_SERVER['HTTPS']) && strtolower($_SERVER['HTTPS']) == 'on') {
     $prot = "https://";
} else {
     $prot = "http://";
}
$GLOBALS["script_name"] = $prot.$GLOBALS['__SERVER']['HTTP_HOST'].$GLOBALS['__SERVER']["PHP_SELF"];
$GLOBALS['home_url'] = $prot.$GLOBALS['__SERVER']['HTTP_HOST'].dirname($GLOBALS['__SERVER']["PHP_SELF"]);

Tip

Defaultmäßig ist im File-Modus der Webroot (/var/services/web/) als Root eingestellt, man kann aber über Administration - Benutzer - Username wählen - Homedir - ändern den Rootpfad beliebig ändern. (Vorraussetzung ist natürlich eine angepasste php.ini, wie in Integration von 3rd-party Applikationen beschrieben.

Weblinks