Symfony Tutorial

Aus Fachinformatiker Azubi
Version vom 23. August 2013, 21:01 Uhr von Approach (Diskussion | Beiträge) (Apache)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Zur Navigation springen Zur Suche springen

Symfony ist ein cooles PHP Framework. In diesem Tutorial wollte ich die Grundkenntnis erklären anhand eines Beispiel.

Installation

sudo apt-get install curl php5-cli

Composer

In PHP gibt es einen Paket Abhängigkeit Auflöser. Dieser kümmert sich um die Abhängigkeiten.

Unter Linux wird es wie folgt installiert:

curl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer

Anschließend kann man den Paket auflöser mittels composer <Funktion> aufrufen. Für andere Systeme müsst ihr die Dokumentation lesen http://getcomposer.org.

Symfony

Mittels dem composer laden wir nun Symfony runter.

composer create-project symfony/framework-standard-edition symfony/

Der composer erstellt den Ordner symfony und Packt die aktuelle symfony Version rein.

Apache

Damit wir später angenehm entwickeln können wäre es ratsam die Entwicklungsumgebung im Home-Order zu haben, also in /home/user/www/symfony. Ebenfalls empfehlenswert ist der Aufruf ohne Unterordner also http://localhost/<Anwendung>. Bei bedarf kann mit Subdomains gearbeitet werden.

Apache Installation

Die Apache Konfiguration kann im Ordner /etc/apache2/sites-available/default konfiguriert werden.

<VirtualHost *:80>
        DocumentRoot /home/<user>/www/symfony/web
</VirtualHost>

Der User sollte logischerweise geändert werden. Wichtig das es in dem Web Verzeichnis verlinkt ist. Das ganze kann man in z.B. in der Default Datei geändert werden.

Damit der der Benutzer www-data nun Zugriff zu dem Verzeichnis bekommt muss folgendes gemacht werden.

Zuerst fügen wir www-data zu unseren Benutzer hinzu.

sudo usermod -a -G <benutzer> www-data

Nun müssen noch die Gruppenrechte anpassen:

chmod 755 /home/<benutzer> -R
chmod 755 /home/<benutzer>/www -R
chmod 755 /home/<benutzer>/www/symfony -R

Bei Problemen bzgl. der Auflösung findet Tipps unter Apache.

Beispiel Config siehe: Symfony Apache Config

Schreibrechte im Cache

Damit der Apache noch Schreibrechte für den cache und logs Bereich bekommt müssen wird folgendes Ausführen:

sudo apt-get install acl 

sudo setfacl -R -m u:www-data:rwx -m u:`whoami`:rwx app/cache app/logs
sudo setfacl -dR -m u:www-data:rwx -m u:`whoami`:rwx app/cache app/logs

Konfiguration

Editor

Als PHP IDE (Integrierte Entwicklungsumgebung) wird der Phpstorm empfohlen. Dies ist Verfügbar unter: http://www.jetbrains.com/phpstorm/download/

Datenbank

Für das Generieren der Parameter für die Datenbank, benutzt man am besten den Konfigurator. Der Erreichbar unter der URL: http://localhost/app_dev.php/_configurator/

Anschließend editiert man die Datei app/config/parameters.yml mit eurem Editor. Um es vornherein auf Deutsch umstellen, müsst ihr den Parameter ändern:

locale: de

Nun sollte Symfony Ready sein.

Tutorial

Start