CakePHP & DIEVOLUTION Blog

CakePHP vs. Ruby on Rails - Teil 2: Runde 1 - Installation

 

Heute beginnt die 1. Runde im Schlagabtausch zwischen CakePHP und Ruby on Rails. Das Thema heute ist die Installation. Welches Framework lässt sich schneller, leichter und besser auf unserem Entwicklungsrechner installieren? Finden wir es heraus!

Ruby on Rails
Beginnen wir mit Ruby on Rails. Die Installation gestaltet sich hier erfreulicherweise einfach, denn vom blanken Computer zur Rails-Entwicklungsumgebung sind es nur wenige Schritte.
Nachdem sich bereits die Apple developer Tools auf unserem iMac befinden, brauchen wir uns nur die neuste Rails Version mittels

gem update rails

zu holen. Ist dies erledigt, sind wir nach zwei weiteren Befehlen schon mitten in unserer Anwendung:

cd Sites/ (optional zum Wechsel in das Websites Verzeichnis des Macs)
rails runde1
cd runde1
script/server

Der Mongrel-Server startet seinen Dienst und wir können uns unter localhost:3000 das Ergebnis betrachten.

Natürlich bietet Ruby on Rails auch vorgefertigte Pakete mit Webserver, Datenbank und Rails. Dies sind unter OSX “Locomotive” und unter Windows “Instant Rails”. Generell lässt sich sagen, dass wenn erst einmal Ruby und RubyGems installiert sind, jegliche Rails Installation ein Kinderspiel darstellt.

CakePHP
Nun zu CakePHP. Hier finden wir aufgrund der Apple Developer Tools und OSX 10.5 schon eine fast idyllische Atmosphäre für CakePHP vor. Nach dem Download des aktuelles Releases erstellen wir in unserem Sites-Verzeichnis einen Ordner cake-runde1 und kopieren den Inhalt des Packagereleases hinein. Nun sollten wir eigentlich über localhost/~username/cake-runde1 die CakePHP Startseite sehen, doch stattdessen heißt es zuerst nur:

The requested URL /Users/username/Sites/cake-runde1/app/webroot/ was not found on this server.

Wie sich herausstellt, gibt es beim vorkonfigurierten Apache des Macs ein kleines Problem mit dem mod-rewrite, dass sich allerdings durch die Modifikation der .htaccess Dateien von Cake lösen lässt. Mittels

RewriteBase /~username/cake-runde1/

in allen drei .htaccess Dateien (root, app, und app/webroot) lässt sich die fehlerhafte mod-rewrite Weiterleitung korrigieren. Nun grüßt uns die CakePHP Startseite mit ein paar gelben Balken, die uns auf mögliche Propleme hinweisen. In unserem Fall sind dies:

- Warning (512): /Users/username/Sites/cake-runde1/app/tmp/cache/ is not writable [CORE/cake/libs/cache/file.php, line 254]
- Notice (1024): Please change the value of ‘Security.salt’ in app/config/core.php to a salt value specific to your application [CORE/cake/libs/debugger.php, line 522]
- Your tmp directory is NOT writable.
- Your database configuration file is NOT present.
Rename config/database.php.default to config/database.php

Diese “Warnungen” sind allerdings leicht zu beheben und sind eher als Hinweise zu verstehen, was noch zu tun ist, um einen reibungslosen Ablauf bei der Arbeit mit CakePHP zu ermöglichen. Windows User dürften hier weniger Fehler sehen, da es dort nicht zu nicht-beschreibbaren Ordnern kommen sollte.

CakePHP bietet nicht wie Ruby on Rails die Möglichkeit, ein komplettes Paket (Webserver, Datenbank, Framework) downzuloaden, allerdings machen es die vielen guten Apache+MySQL+PHP Bundles im Netz leicht, CakePHP zu installieren. Ich empfehle hier das Xampp Paket von www.apachefriends.org, was einen leichten Einstieg ermöglicht.

Die Punktevergabe:
Die Installation ist immer die erste Hürde, die bei Frameworks genommen werden muss. Hierbei stellen sich beide Frameworks nirgendwo wirklich quer, alles verläuft meistens problemlos. Und sollte doch einmal ein Problem auftreten, kann man sich der Hilfe der Community sicher sein. Rails hat durch die mächtigen RubyGems allerdings ein wenig die Nase vorn, dafür muss man mit Ruby, RubyGems und Rails auch mehr installieren. Bei CakePHP kommt die manchmal auftretende Problematik mit dem Apache mod-rewrite Modul zum Tragen, daher geht diese Runde an:

Ruby on Rails

Damit steht es (wie sollte es nach einer Runde auch anders sein):
CakePHP 0 : 1 Ruby on Rails

Eine Anmerkung dazu: Hierbei geht es natürlich nur um die Installation auf dem Entwicklungsrechner. Das finale Bereitstellen auf dem Server wird später näher beleuchtet.

In der nächsten Runde erfahren wir mehr zu:

Runde 2 - Die Basis: Ruby oder PHP


Veröffentlicht am Dienstag, den 24. Juni 2008 um 09:51 Uhr veröffentlicht

Du kannst einen Kommentar schreiben, oder einen Trackback auf deiner Seite einrichten.

2 Reaktionen zu “CakePHP vs. Ruby on Rails - Teil 2: Runde 1 - Installation”

 

  1. CakePHP & DIEVOLUTION Blog » Blog Archiv » CakePHP vs. Ruby on Rails - Teil 1: Vorstellung der Kontrahenten Am 24. Juni 2008 um 09:51 Uhr

    […] RUNDE 1: Installation […]

  2. shocki Am 3. Oktober 2008 um 17:01 Uhr

    Wann geht es weiter? Bin gespannt…

Einen Kommentar schreiben