ionCube Loader - PHP Encoder

Was ist ein ionCube Loader

Der ionCube Loader ist ein Programm ähnlich wie der Zend Encoder. Es wandelt den lesbaren Quellcode von PHP-Dateien in nicht mehr lesbaren Bytecode um und erzielt dadurch eine höhere Performance. Dazu müssen sogenannte Loader installiert oder zum benötigten Zeitpunkt geladen werden. Diese Loader werden von ionCube kostenlos zur Verfügung gestellt und stehen für fast alle Betriebssysteme zur Verfügung, unter anderem: Windows, Linux, FreeBSD, OS X, Solaris und einige weitere.

ScarFormManager und ScarWebLink sind zu 90% mit dem ionCube Encoder codiert und benötigen diesen Loader zwingend, das betrifft den inneren Kern der Skripte (Core) und einige wenige Layoutbestandteile in der Administration. Das Layout für Ihre Besucher kann weiterhin vollständig angepasst werden und darüber hinaus, soweit möglich, eigene Erweiterungen für die Skripte geschrieben werden (beachten Sie die Lizenzbestimmungen, AGB!).

Zum Installieren der Loader gibt es verschiedene Möglichkeiten, die abhängig vom Betriebssystem und der Konfiguration sind. Die Loader können neben den Loadern des Zend Encoders laufen, d.h. Sie können weiterhin Ihre mit dem Zend Encoder verschlüsselten PHP-Dateien benutzen, sofern Sie solche haben sollten.

Hinwei: Der ionCube-Loader ist bereits bei vielen Webhostern vorinstalliert und benötigen keine weitere Anpassungen. Wenn Sie auf Ihrer PHPInfo Seite einen Eintrag zu "ionCube" finden, ist dieser bereits vorhanden.

Offizieller ionCube Loader Download

Aktuelle Loader können kostenlos auf der offiziellen Seite von ionCube heruntergeladen werden.
ionCube Loader, kostenlos: http://www.ioncube.com/loaders.php

Installation

Die ionCube Loader werden teilweise mit den Skripten geliefert, generell können Sie aber immer von der offiziellen Webseite für das passende Betriebssystem und PHP Version heruntergeladen werden. Im nachfolgenden wird davon ausgegangen, dass die ionCube Loader System und PHP Dateien im Verzeichnis /ioncube/ abgelegt haben.

Öffnen Sie die ionCube Helfer Datei: www. Ihre Domain.de/ioncube/ioncube-loader-helper.php
(Sollte der Loader bereits installiert sein, wird hier lediglich eine Erfolgsmeldung ausgegeben [success])

ionCube Loader, ioncube-loader-helper.phpionCube Loader, ioncube-loader-helper.php

Alternative 1: Installation durch Eintrag in die php.ini
Durch einen Klick auf "php.ini installation instructions" wird Ihnen folgender Ausgaben angezeigt.

ionCube Loader php.ini HinweiseionCube Loader php.ini Hinweise

Die Anzeige benennt Ihnen den für Sie notwendigen Loader.

Im Anschluss müssen Sie nun lediglich die php.ini Datei öffnen und folgende Zeil am Ende einfügen:

zend_extension = [path]\ioncube_loader_[os].dll

Ersetzen Sie [path] und [os] bitte durch den vollständigen, absoluten Pfad zum Loader und durch das empfohlene Betriebsystem (siehe ioncube-loader-helper.php).

Alternative 2: Run-Time Loading
Ist die erste Variante nicht möglich, kann der ionCube Loader zur Laufzeit mit dem PHP Befehl dl(); geladen werden, sobald er benötigt wird. Legen Sie in diesem Fall den passenden Loader (Betriebssystem und PHP Version) in einem Verzeichnis mit Namen /ioncube/ oberhalb des Skriptes ab.

Klicken Sie nach Aufruf von ioncube-loader-helper.php auf "run-time loading installation instructions", um weitere Details zu erhalten.

Hinweis: Die Run-Time Loading Variante kann nur genutzt werden, wenn der Webserver nicht via multithreading arbeitet!

Was tun, wenn Alternative 1 oder 2 nicht funktionieren
Fragen Sie in solchen Fällen Ihren Provider um hilfe, in den meisten Fällen ist Ihnen der ionCube Loader bekannt und sollte durch diesen schnell eingerichtet werden können.

zend_extension vs. zend_extension_ts

zend_extension_ts wird für Multithreaded-Server genutzt/benötigt und zend_extension für die übrigen. Wird die falsche der beiden Optionen genutzt, wirft PHP einen Fehler der in den Server-Logs gefunden werden kann.

Ob das einbinden des ionCube Loaders erfolgreich war, kann durch phpinfo(); oder die Datei "ioncube-loader-helper.php" geprüft werden. Wenn der ionCube Loader bei Aufruf von phpinfo(); angegeben wird, war die Installation erfolgreich.
siehe: http://www.php.net/phpinfo

Wenn Zend Optimizer bereits installiert ist

Sollten in Ihrer php.ini bereits der Zend Optimizer installiert sein, wird der ionCube Loader VOR dem Zend Optimizer angegeben. (Fügen Sie den ionCube Loader in diesem Fall also NICHT am Ende der php.ini ein.)

Installation des ionCube Loaders bei 1&1, 1und1 und Strato

Bei 1und1 und Strato kann der ionCube Loader bei einigen buchbaren Webpaketen nachträglich durch das anlegen einer eigenen php.ini erreicht werden. Erstellen Sie die php.ini in Ihrem Root-Verzeichnis und verfahren sie ansonsten wie unter "Installation" beschrieben.
Siehe 1und1: http://faq.1and1.com/miscellaneous/24.html
Siehe Strator: http://www.strato-faq.de/artikel.html?id=2306

Ob das einbinden des ionCube Loaders erfolgreich war, kann durch phpinfo(); oder die Datei "ioncube-loader-helper.php" geprüft werden. Wenn der ionCube Loader bei Aufruf von phpinfo(); angegeben wird, war die Installation erfolgreich.
siehe: http://www.php.net/phpinfo

Skript-Installation durch Scar4U

Alle Skripte können zusätzlich durch den Service von Scar4U.de auf Ihren Webspace installiert werden. Dieser Service gilt allerdings nur eingeschränkt für den ionCube Loader. Dieser ist kein Produkt von Scar4U und unterliegt daher nicht diesem Service. Soweit möglich, wird auf Wunsch versucht die Lauffähigkeit des Encoders bereit zu stellen. Grundsätzlich wird diese Produktinstallation vom Server-Administrator durchgeführt, der über evtl. umfangreichere Zugriffsrechte verfügt.

Offizielle ionCube Loader Dokumentation

Weitere Informationen zum ionCube Loader erhalten Sie online beim Hersteller:
http://www.ioncube.com/loader_installation.php