medienbüro

medienbüro

 

Feed abonnieren


Über dieses Blog

Hier blogge ich über Joomla! und Relevantes zur Webentwicklung, Suchmaschinen, Datensicherheit, Virtuellen Welten. Dieses Blog gibt meine eigenen Gedanken wieder und es besteht kein Anspruch auf Vollständigkeit oder Richtigkeit der Beiträge.

Tags



indigioTags ► PHP
Tags >> PHP
18. Mär 2009
Robert Reinhardt

Es passiert nicht oft aber ab und zu stößt man auf Umlautprobleme mit der typo3 Sucherweiterung indexed_ search.

Ein Ansatz ist  in der Datei

pi/class.tx_indexedsearch.php  nach  Zeile 436

$inSW = substr($this->piVars['sword'],0,200);

diese Zeile zu ergänzen

$inSW = htmlentities($inSW,ENT_NOQUOTES); 

14. Mär 2008
Robert Reinhardt

ionCube und PHP 5.2.5

Unverhofft kommt oft. Nach einer nächtlichen Softwareaktualisierung vom PHP Interpreter auf 5.2.5 bei unserem Shared Host Webspace (1&1) war die Internetpräsentation meines Arbeitgebers nicht mehr benutzbar. Eine eingesetzte Komponente im Joomla! CMS die durch ionCube Encoder codiert ist stellte sich komplett quer und verrammelte die gesamte Webseite hinter einer Fehlermeldung.

Site error: the file homepages/[webspace]/htdocs/joomla/components/com_sef/sef.php requires the ionCube PHP Loader ioncube_loader_lin_5.2.so to be installed by the site administrator
ionCube wird von Software Entwicklern zum Verschlüsseln des ja eigentlich quelloffenen PHP Codes verwendet. So haben diese die Chance ihren Code auch kommerziell weiter zu verbreiten. Jeder Käufer des mit ionCube verschlüsselten Skripts muss auf seinem Webspace eine Extension nachladen die das kodierte script an the fly dekodiert. In den Versionen < 5.2.5 konnte man die benötigte ionCube-Loader Erweiterung zur Laufzeit einbinden. Per dl() Funktion war dies möglich. Durch Sicherheitsprobleme in den älteren PHP Versionen wurde diese Funktion aber abgeschaltet und die Einbindung der Erweiterung zur Laufzeit funktioniert seit dem nicht mehr. Der Entwickler von ionCube schlägt vor die Erweiterung, in meinem Fall die "ioncube_loader_lin_5.2.so" per
zend_extension = /[path]/ioncube_loader_lin_5.2.so
Befehl in der "php.ini" Datei nachzuladen. Per ioncube-loader-helper.php habe ich das Verzeichnis in dem die php.ini enthalten ist lokalisiert und festgestellt, wie bei einem shared host nicht anders zu erwarten, dass ich auf dieses Verzeichnis ja gar nicht zugreifen kann. Da mein Provider PHP als cgi Version betreibt ist es möglich eigene php.ini Dateien in seinem Webspace einzusetzen. Bloß wie und wo man diese anlegt konnte ich nur durch "try and error" feststellen. Ich habe gemerkt das der ionCube Loader in jedem per index Dokument angesprochen Verzeichnis nachgeladen werden muss. Also in jedem Verzeichnis wo das encodierte Script liegt und jedem Webroot das das Script includiert.