Die erste Mini-Anwendung mit CakePHP

Am vergangen Sonntag durfte ich bei der Schulung von Roland in Sachen CakePHP mit dabei sein. Das Framework interessiert mich an sich und ausserdem sehe ich es als eine Möglichkeit an, damit meine kleinen Webapplikationen neu zu zimmern. Alle Teilnehmer haben ein “nackiges” Framework erstellt und sind von dort aus gestartet. Das ist auch durchaus sinnreich und allemal besser, als wenn wir von Roland ein fertiges Päckli bekommen hätten. Wir haben zwar ein solches Paket erhalten, aber nicht um damit während der Schulung zu arbeiten, sondern um daraus einige Beispiele zu ziehen und natürlich auch für das nachträgliche Studium.

Im Vorfeld habe ich auf meinem kleine EEEPC 1000H einige Vorkehrungen getroffen. Darauf läuft ein Ubuntu 9.10. Es braucht also nicht zwingend ein Server zu sein, auch wenn das natürlich bei einer fertig gebackenen Applikation sinnreich wäre. Aber zum Entwickeln reicht also ein solch kleiner Kerl, der übrigens bloss ein Gigabyte flüchtigen Speicher besitzt.

Manchmal hätte ich aber dann doch lieber ein etwas grösseren Bildschirm gehabt, gerade bei der Ansicht der Konsole, die ab und an eine ziemlich lange “Backliste” anzeigt. Aber es ging letztlich auch so ganz gut. Ich installierte PHP, den Apache Webserver, den MySQL-Server und für mich noch optional PHPMyAdmin. Wer möchte, kann sich natürlich auch über die Konsole die nötigen Datenbanken Tabellen anlegen. Ich mag einfach lieber das GUI.

sudo apt-get install php5 php5-cli mysql-server apache2 phpmyadmin

Wichtig ist, dass beim Apache-Webserver das Modul mod_rewrite aktiviert ist. Das haben wir nach längeren Detektivarbeiten und Dank Ute herausgefunden. Auf ubuntusers.de gibt es dazu einen gesunden Wiki-Artikel. (Heisst es eigentlich einen gesunden Wiki-Artikel oder ein gesunder Wiki-Artikel?)

Anschliessend holten wir uns die aktuelle und stabile Source auf der Website von CakePHP und entpackten sie. Der Apache muss dann auf das Verzeichnis webroot im Baum des Downloads unter app zeigen. Die Datei default im Verzeichnis /etc/apache2/sites-available hat bei mir folgendes Aussehen, allerdings habe ich keine zusätzlichen virtuellen Hosts, sondern bloss eine Site erzeugt. Auch hier hat mich Ute unterstützt:

<virtualhost *:80>
	ServerAdmin webmaster@localhost

	DocumentRoot /home/roman/cakephp/app/webroot
	<directory />
		Options FollowSymLinks
		AllowOverride FileInfo Options

	<directory /home/roman/cakephp/app/webroot>
		Options Indexes FollowSymLinks
		AllowOverride FileInfo Options
		Order allow,deny
		allow from all
	</directory>

	ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
	<directory "/usr/lib/cgi-bin">
		AllowOverride None
		Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
		Order allow,deny
		Allow from all
	</directory>

	ErrorLog /var/log/apache2/error.log

	# Possible values include: debug, info, notice, warn, error, crit,
	# alert, emerg.
	LogLevel warn

	CustomLog /var/log/apache2/access.log combined

 Alias /doc/ "/usr/share/doc/"
 <directory "/usr/share/doc/">
 Options Indexes MultiViews FollowSymLinks
 AllowOverride None
 Order deny,allow
 Deny from all
 Allow from 127.0.0.0/255.0.0.0 ::1/128
 </directory>

</virtualhost>

Damit funktionierte CakePHP ganz gut. Die Installation war also recht einfach, die ersten vier kleinen Hürden betreffen die Schreibrechte auf Verzeichnissen, die sichergestellt werden müssen und der “gesalzenen Sicherheit” sind rasch erledigt. Danach kann man bereits loslassen.

Roland hat sein Projekt, das wir ansatzweise an diesem Sonntag erarbeitet haben, in das Netz gestellt, so dass jeder daran partizipieren kann. Auch das ganze Modell und die Anforderungen stehen dort bereit. Die Idee, welche sich hinter diesem Vorgehen verbirgt, soll echte OpenSource-Programmierung abbilden. Jeder von uns kann oder darf einen Teil zu diesem Projekt beitragen, bis ein fertiges Produkt entsteht. So macht “opensourcen” Spass. Ich hoffe, dass ich mir hin und wieder ein Stündchen Zeit nehmen kann, um da mitzuwirken.

Während dem Kurs sind ein paar wenige Bilder entstanden, die ich in eben jener Applikation bereitgestellt habe, die einst durch die neu zu backende Anwendung ersetzt werden soll: In meiner kleinen Bilderdatenbank. An dieser Stelle sende ich ein dickes Dankeschön an Ute und Roland für die Gastfreundschaft und für den interessanten Sonntagnachmittag! Ich komme sicherlich noch einmal auf das Thema zurück und kann dann hoffentlich etwas tiefer über Technisches berichten.

Ähnliche Artikel

Schlagwörter: , , , , ,

6 Kommentare to “Die erste Mini-Anwendung mit CakePHP”

  1. danielNo Gravatar schrieb:

    bei der apache-config-Datei sind einige Zeilen verschwunden, weil nicht escapet worden sind ;-)

  2. danielNo Gravatar schrieb:

    Jetzt hat der XSS-Filter den wichtigsten Teil gefressen^^

    Also was ich meinte ist: “kleiner als” und “größer als” wurden nicht escapet ;-)

  3. Roman HanhartNo Gravatar schrieb:

    Danke Daniel! Habe ich gar nicht bemerkt. Dachte mit dem Tag pre alles sauber dargestellt wird. WordPress escapet halt schön ;-)

  4. murksNo Gravatar schrieb:

    Auf ubuntusers.de gibt es dazu einen gesunden Wiki-Artikel. (Heisst es eigentlich einen gesunden Wiki-Artikel oder ein gesunder Wiki-Artikel?)

    In diesem Satz ist der Akkusativ richtig. Einfach überprüfbar, indem man fragt: Wen oder was gibt es auf Ubuntuusers.de?

    Für den Nominativ müsste man so fragen: Wer oder was gibt es auf Ubuntuusers.de?

    Hoffentlich erkennst man, dass es hakt^^
    Wie du es in deinem Satz gemacht hast, stimmt das also schon laut Grammatikregeln.

  5. Roman HanhartNo Gravatar schrieb:

    Danke murks! Die Regel ist wirklich einfach anzuwenden.

    Passt so gar nicht, dein Pseudonym, zu der richtigen und nicht vermurksten Regel ;-)

  6. RolandNo Gravatar schrieb:

    Hi Roman,
    schön dass es dir gefallen hat!
    Ich fummel auch schon an der Applikation weiter rum und werde einige Aspekte bloggen.
    Bis bald
    Roland

Hinterlasse einen Kommentar

blogoscoop Blogverzeichnis - Blog Verzeichnis bloggerei.de