Installation von nginx mit PHP auf Gentoo

nginxSeit einigen Tagen habe ich einen neuen Root-Server, der meine Webseite ausliefern soll. Da ich ein bisschen experimentierfreudig bin, habe ich mich zur Installation des Webservers nginx (sprich engine-x) entschlossen, da dieser in vielen Benchmarks noch schneller als lighttpd ist und gleichzeitig weniger RAM verbraucht.

Gleichzeitig sind aber die Rewrite-rules einfacher als beim lighttpd, da diese fast 1:1 vom Apache zu übernehmen sind (was den Umzug der Seiten deutlich einfacher gestaltet). Ich möchte direkt nativ alles über nginx und dessen FastCGI-Backend ausliefern, weshalb ein paar zusätzliche Artikel zu deren Rewrite-Rules oder Stolperfallen bei der Einrichtung kommen werden.
Installation von nginx mit PHP auf Gentoo weiterlesen

Piwik 0.4.3 ist erschienen

Die neue Version 0.4.3 der Statistik-Software Piwik ist gestern erschienen und diese bringt den versprochenen zweiten Patch von mir aus Ticket #793 mit, welcher ein Rewrite der sendHttpRequest()-Funktion ist, um Abfragen der Versionsnummer auch bei allow_url_fopen=Off zu ermöglichen.
Piwik 0.4.3 ist erschienen weiterlesen

Information on the minimum required version of PHP of each component of Zend Framework

German: Dieser Artikel ist auf Englisch, da er an ein internationales Publikum gerichtet ist.

In one of the latest posts on the Zend Framework maillinglist there was a question regarding the minimum required version of PHP for the current version Zend Framework (1.9.0). As of Version 1.7.0 of ZF the documentation recommends versions >=5.2.4 for PHP. Some users are stuck with php5.1.6 (e.g. those running Redhat Linux) and these need to know the components that could be problematic.

To see the minimum required version of PHP for each package of ZF, i’ve created a shellscript which uses PHP_CompatInfo from Pear. It doesn’t take the dependencies into account!

For your convinience i’ve created a website with these infos:

http://zfcompat.wolf-u.li/

By the way for all users of Redhat with PHP 5.1.6: In Zend 1.9.0 the following files that need a higher version than 5.1.6. Be aware, that some components are dependend on these files, e.g. Zend_Cache_Backend is used in about 40% of all components (see comment by Thomas below).

ZendCacheBackend.php : 5.2.1
ZendCryptDiffieHellman.php : 5.2.0
ZendCryptRsaKeyPrivate.php : 5.2.0
ZendCryptRsaKeyPublic.php : 5.2.0
ZendCryptRsa.php : 5.2.0
ZendFileTransferAdapterAbstract.php : 5.2.1
ZendNavigationPage.php : 5.2.0
ZendOpenId.php : 5.2.0
ZendPdfPage.php : 5.2.0
ZendPdf.php : 5.2.0
ZendTestPHPUnitDbOperationTruncate.php : 5.2.1

Thanks to Stefan Sturm for this list!

Still, you should run your own tests and check if your application is really working. The Website above just shows the possiblity to run a specific component under a specific php-version and isn’t taking dependencies between components into account. Or simply update to the current version of PHP 😛

Zend Framework 1.9.0 ist erscheinen

Das Zend Framework ist in der Version 1.9.0 erschienen und bringt immer mehr unternehmensnahe Komponenten mit. So können mit Zend_Queue und Zend_Service_Amazon_Sqs die Queuing-Services Apache ActiveMQ, MemcacheQ, Zend Platform’s Job Queue und Amazon SQS in Anspruch genommen werden. Zend_Ldap arbeitet nun deutlich besser mit dem Microsoft Active Directory und dem Novell eDirectory zusammen. Zend_Db_Adapter_Sqlsrv ist einer neuer Datenbankadapter für den Microsoft SQLServer.
Aber auch die neue Komponente Zend_Feed_Reader ist sehr interessant, da diese eine einheitliche Schnittstelle zu allen Feeds im RSS und Atom-Feeds bietet. Eine weitere, schon lang fehlende Komponente ist Zend_View_Helper_BaseUrl, welche die URL zum public-Verzeichnis zurückgibt und auch URLs aufbauen kann.
Zudem wurden nun alle Komponenten gegen PHP5.3 getestet und sind diesbezüglich validiert. Der Support für PHP5.2 ist jedoch deswegen nicht aufgehoben, dieser ist bis auf weiteres gegeben. Das komplette Changelog ist hier zu finden.

Ein paar API-Changes waren dabei, die hier nachgelesen werden können.

Das Release ist über das SVN oder die offizielle Seite zu beziehen. Die Zeile für svn:externals lautet:

library/Zend http://framework.zend.com/svn/framework/standard/tags/release-1.9.0/library/Zend/

Fatal error: Error: cannot open phar „/to/php-5.2.10/pear/install-pear-nozlib.phar“ in /to/php-5.2.10/pear/install-pear-nozlib.phar on line 795

Bei der Kompilierung von php 5.2.10 tritt der folgende Fehler auf:

Fatal error: Error: cannot open phar
"/to/php-5.2.10/pear/install-pear-nozlib.phar" in
/to/php-5.2.10/pear/install-pear-nozlib.phar on line 795
make[1]: *** [install-pear-installer] Error 255
make: *** [install-pear] Error 2

Dies lässt sich beheben, indem man ohne die Option „–with-curlwrappers“ kompiliert.

Zend Framework 1.8.2 ist erschienen

Das Zend Framework ist in der Version 1.8.2 erschienen, was einige Fehler behebt, welche hier nachzulesen sind.

Mit der Einführung von Zend_Loader_Autoloader in Version 1.8.0 kamen viele Fehler auf, welche nun mit diesem Release behoben sein sollten. In allen Fällen, wo Zend_Loader::loadClass() im Framework hartcodiert war, wird nun per class_exists() zunächst geprüft und der Autoloader getriggert. Das soll das Schreiben von eigenen Adaptern und Plugins vereinfachen.

Ausserdem wurde eine neue Seite für die Changelogs eingeführt:

http://framework.zend.com/changelog

Das Release ist über das SVN oder die offizielle Seite zu beziehen. Die Zeile für svn:externals lautet:

library/Zend http://framework.zend.com/svn/framework/standard/tags/release-1.8.2/library/Zend/

Zend Framework: Zend_Gdata meldet NoLinkedYoutubeAccount per Exception

Auf der Maillingliste des Zend Frameworks kam die Frage auf, warum der folgende Fehler auftritt:

Fatal error: Uncaught exception 'Zend_Gdata_App_AuthException' with message 'Authentication with Google failed. Reason: NoLinkedYouTubeAccount' in
Zend/Gdata/ClientLogin.php:174
Stack trace: #0 index.php(19):
Zend_Gdata_ClientLogin::getHttpClient('somegoogleaccount@gm...', '******', 'youtube', NULL, 'MySource', NULL, NULL, 'https://www.goo...') #1 {main} thrown in /var/wwwZend/Gdata/ClientLogin.php on line 174

Die Lösung ist einfach und hier beschrieben:

  • Diese Seite ansurfen und einloggen
  • Auf der nächsten Seite einen existierenden Youtube-Account angeben oder einen neuen erstellen lassen
  • Dann den „Hinzufügen“-Button klicken
  • Jetzt wird man eingeloggt und zur Youtube-Homepage umgeleitet

Das wars 😉