Da wir in Zukunft Daten über Kundenzufriedenheit und -Feedback per Umfrage einsammeln möchten, habe ich heute mal eine webbasierte Survey-Software evaluiert. Die Evaluation gestaltete sich einfach, nachdem ich mit ein wenig Googlen eine Vergleichstabelle gefunden habe.

Ein wenig mehr googeln ergab, dass die Liste wohl ziemlich akkurat ist, also bin ich die Programme auf der Liste kurz durchgegangen. Langer Rede kurzer Sinn: LimeSurvey ist die Wahl!

Heute Morgen gabs einen Ausfall bei vertox.ch. Wiedermal ein RZ-Problem. Wird Zeit dass wir RZ wechseln… Wir arbeiten daran, mit Hochdruck…

Für etwas anderes habe ich mir dann über den Mittag doch mal 5min zeit genommen: An der RIPE55-Konferenz (Ripe ist zuständig für die weltweite Verwaltung der IP-Addressen) sangen zwei IP-Cracks ein Lied:

Eine wichtige Problematik, auch für den Endkunden: Wird nicht von IPv4 auf IPv6 Upgraded, endet das Internet im Jahr 2011! (Dort stehen auch weitere Infos zur Entstehung des Lieds)

IPv6 makes me let out a sigh,
but I spose we better give it a try,
I suppose we better give it a try!

Am OpenDay habe ich ein während dem Apero ein paar Takte mit Frau Hagen geredet. Sie stellt zunehmendes Interesse an IPv6 fest. Es besteht also noch Hoffnung fürs Internet…

Hibernate – auch bekannt als “Suspend to Disk” – erfreut sich unter mobilen Benutzern grosser Beliebtheit: Im Büro das Laptop schnell ausschalten, im Zug einfach wieder arbeiten, im Bus das Laptop im Rucksack, und im Zuhause schnell noch die Arbeit beenden. Wohlgemerkt: Emails oder Briefe schreiben sich so ohne Speichern. Da immer der momentane Systemzustand wiederhergestellt wird.

Einziger Nachteil unter Ubuntu: In der Default-Einstellung braucht ein Suspend fast so lange wie ein Start.

Schneller gehts mit dem Tool uswsusp und dieser Anleitung.

Eine recht einfache Anleitung zur Installation von XDebug findet man ja schnell. Da jedoch php5-dev installiert werden muss, wirds wohl auch schon bald von der codeBase ein .deb geben. Wir wollen keine Development-Pakete auf unseren Servern, die enthalten Kompiler und machen das System deshalb unsicher.

Was der freie Debugger sonst noch so kann, finden Sie auf der XDebug-Homepage raus.

Auf Remote Debugging, und die Integration in Eclipse kommen wir noch zu sprechen… versprochen.

Neben den Zend-IDE’s gibts auch ein anderes, Zend-Unterstütztes IDE-Framework: Eclipse PDT (Downloads)

Zusammen mit dem SVN-Plugin Subclipse und dem mitgelieferten Zend Debugger entsteht eine sehr Brauchbare PHP-IDE. Im Anhang an diesem Beitrag befindet sich eine importierbare XML mit den nötigen Eclipse-Sites. Wenn Sie Eclipse neu installieren empfehlen wir aber, gleich das All-In-One PDT zu nehmen.

Weitere Infos:

  • Eclipse PDT Einführung
  • Subclipse Anleitung
  • Anleitung für PDT und Aptana (seehr cooler Editor für JavaScript und HTML mit SFTP- und FTP-Unterstützung). Aus folgenden Gründen wird Aptana von uns aber nicht verwendet:
    • Ungenügende PHP-Unterstützung
    • (S)FTP-Synchronsisation zu langsam.
    • JavaScript-Debugging und Verification wird im Firefox mit Firebug erledigt (siehe Beitrag dazu)
    • Bei dynamischem JavaScript, wie z.B. in Symfony, das Serverseitig “gebaut” und an den Client gesendet wird, lässt sich der Debugger eh nicht verwenden.

Step-By-Step PHP-Debugging im PDT erfordert übrigens Zugriff auf einen PHP-Webserver mit Zend- oder XDebug-Debugger. Wir werden noch eine Anleitung liefern.

FTP ist unsicher. Nicht nur alle Daten, sondern auch alle Passwörter / Benutzernamen werden in Klartext übermittelt.

Mit SSL oder TLS verschlüsselt werden aber sowohl die Daten, als auch die Credentials verschlüsselt übermittelt. Wir verwenden den Proftpd. Eine gute Anleitung wie man diesen verschlüsselt findet sich hier: http://www.diegosblog.de/2007/05/13/proftpd-ftps/

Einige Ubuntuspezifische Änderungen brauchts aber trotzdem:

Schlüssel generieren

openssl req -new -x509 -days 365 -nodes -out /etc/ssl/certs/proftpd.cert.pem -keyout /etc/ssl/certs/proftpd.key.pem

Server Konfigurieren

TLSEngine on
TLSLog /var/log/proftpd-tls.log
TLSProtocol SSLv23
TLSOptions NoCertRequest
TLSRSACertificateFile /etc/ssl/certs/proftpd.cert.pem
TLSRSACertificateKeyFile /etc/ssl/certs/proftpd.key.pem
TLSVerifyClient off

Zertifikat erstellen folgt später.

Firefox ist für Webentwickler ein sehr interessantes Tool. Seine Plugin-Schnittstelle wird auch für Entwicklungs- und Webmastertools rege benutzt:

  • Webmaster:
    • FireFTP: Ein FTP-Client für Firefox, unterstützt FTPS und bietet ein Synchronisations-Feature.
  • Webdesign:
    • LocaleSwitcher: Zwischen verschiedenen Sprachen wechseln.
    • Lorem Ipsum-Generator: Generiert den Lorem Ipsum-Text zum Testen von Schriftbildern, Formularen etc.
    • Web Developer Toolbar: Bietet diverse Tools wie hervorheben von Tabellenzellen, Div’s oder anzeigen von CSS-Elementen sowie class- und id-Informationen. Sehr praktisch sind auch der eingebaute Masstab, die Verlinkung mit den W3C-Validatoren, und die Auflösungs-Funktion, die das Fenster auf eine bestimmte Auflösung anpasst.
  • Webentwicklung:
    • FireBug: Ein Debugger für JavaScript, CSS, HTML. Neben Profiling von Ladezeiten und JavaScripts kann FireBug auch Step-By-Step JavaScript debuggen. Ein HTTP-Protokollmonitor gehört ebenfalls zum Umfang.

Die Direktive open_basedir erlaubt, unabhängig von Safemode oder Permissions, den Zugriff von PHP-Skripten auf bestimmte Verzeichnisse einzuschränken. Dabei kommt es aber manchmal zu Problemen, wenn folgendes vergessen wurde:

  • Der session.save_path: PHP kann keine Sessions abspeichern, wenn der Zugriff auf diesen Pfad verboten ist.
  • Das upload_tmp_dir: PHP kann sonst nich auf hochgeladene Dateien zugreifen, das Hochladen an sich klappt aber.
  • Der include_path: PHP kann sonst keine Libraries im include_path öffnen.

Was nicht hineingehört:

  • Pfad zu /tmp: Hier werden auch von Systemapplikationen temporäre Dateien gespeichert.
  • Pfad zu sendmail: Liegt, zumindest bei Debian, im /usr/sbin. Dieser Pfad gehört ganz sicher nicht in eine Web-Konfiguration… Sendmail wird übrigens trotzdem gefunden.