Direkt zum Hauptbereich

nginx mit CakePHP 2.1.2

Und nun werde ich Euch zeigen, wie ich CakePHP 2.1.2 mit nginx versöhnte:

Jedoch muss ich dafür nichts wiederholfen, also guckt erstmal hier,
bei mir jedoch ohne spawn-cgi:
http://kevin.vanzonneveld.net/techblog/article/cakephp_and_nginx/

Ich werde nun den Code durchgehen und erklären, was ich gelernt habe bzw. was Ihr vielleicht machen müsstet:


root    /var/www/example.com/app/webroot;  
index    index.php index.html index.htm;
   

Obig wird der absolute Pfad zum Wurzelverzeichnis von nginx gelegt.
Dieses ist bei CakePHP in cakephp/app/webroot.

Ich nutze hierfür immer nano in der Shell:
nano /etc/nginx/conf.d/default.conf

Mein Pfad unter Fedora sieht nun so aus:
 root        /usr/share/nginx/html/cakephp/app/webroot;

Der Rest ist geblieben, und ich wählte bewusst den default-Ordner von nginx, weil ich mir die Option offen halte möchte, Apache wieder laufen zu lassen.
Es macht nicht viel Sinn, weil ich so physikalisch zwei Ordner mit cakephp habe, aber diese Daten sind klein und ich trenne die beiden Server lieber, um für spätere Stolpersteine und Vergleiche vorzusorgen.
Die wesentlichen Daten sind ja sowieso in einer Datenbank gespeichert, worauf von beiden zugegriffen werden kann.

CakePHP kann aber nun eben auch über die URL angesprochen werden,
so beschreibt Ammelbruger et al ein Beispiel mit folgender ULR:
http://localhost/cakejobs/jobs

Hier ist webroot=cakejobs aber der Ordner jobs existiert nicht, wird aber normalerweise von htaccess umgeleitet.

Dies muss man nun nginx auch beibringen, also dass jede nicht vorhandene ULR als Argument an CakePHP weitergereicht wird:


   # Not found this on disk?   
   # Feed to CakePHP for further processing!  

   if (!-e $request_filename) {  
     rewrite ^/(.+)$ /index.php?url=$1 last;  
     break;  
                              }  

Die nächste Veränderung zur Standardkonfiguration ist im nächsten Block zu sehen, der für das fastcgi sorgt:


location ~ \.php$ {
        # fastcgi_pass   unix:/tmp/php-fastcgi.sock;
        fastcgi_pass   127.0.0.1:9000;


Dort ist nämlich kein root mehr, sondern einfach die URL samt Port, wo der PHP-FastCGI-Parser lauert.

Ich hatte eine Weile gebraucht, um jene Seite zu finden;
und nach einigen Versuchen kopierte ich einfach deren Zeilen und ersetzte meine default.conf damit bis es dann klappte.

Wähle ich nun localhost an, springt mir CakePHP entgegen,
dass dann nur noch eingerichtet werden muss.

Ciao

Kommentare

Beliebte Posts aus diesem Blog

Pflanzsack aus Jute

Nachdem ich die Bücher vom Arche Noah Verein schon vorstellte, möchte ich hier eine Topfalternative zeigen, die obendrein noch dekorativ ist. Pflanzsäcke Oder "grow bags", wenn man etwas moderner daher komme möchte bzw. mehr Suchergenisse will. Dabei wollte ich wenig Geld ausgeben, und auch nicht ganz spartan bleiben und den Blumenerdesack dafür nutzen; und bestellte mir 50 kg Jutesäcke für ca. 1,20 EUR/Stück. Nimmt man den ganzen Sack, wird der Topf schon recht groß, auch wenn man etwas des Materials nach innen oder außen faltet. Also nahm ich mir die Freiheit und nähte aus einem großen vier kleine und verbrauchte den letzten Rest unserer Erde fürs Umtopfen der Habanero. Die machte nämlich nun Platz für die sibirische Hauschili und die restlichen von beiden Sorten mischte ich zusammen und stellte sie auf die Fensterbank. Der Vorteil dieser Art von Töpfen liegt auf der Hand: sie sind billig im Vergleich zum Volumen sie sind dekorativ - wirken rustikal biet...

rails + carrierwavve + plupload = multiple file upload

Right now I am very happy! I finished my work on creating a file upload method in rails for more than one file, altogether handled by rails sessions and as objects. First I had to learn a bit more about how rails works and I achieved that by reading a lot: books, screencasts and blogs. In this blog post I like to share what I accomplished, but without the hussle of putting code blocks in here, so watch out for bold formatted text as that is the code. My goal was to have one site with just the pure option of uploading files. All file handling would be done behind the scenes by myself logging onto my server. That said you are not going to see any fancy CRUD here. Lets start then! And dont forget to versioning your app BEFORE you try something new! [e.g. git] > rails g scaffold Photo title:string Now add carrierwave to you Gemfile and run > bundle install >rails g uploader Photo Alltogether you have model, controller, views and an uploader folder with the Ph...

LEGO Alternativen: Sluban und COBI

Ich habe vor kurzem wieder Feuer gefangen für LEGO. Und das kam durch die Dokumentation über die Errichtung des LEGO-Hauses in Billund. Also habe ich meine Steine gereinigt und die Kinder fangen gerade an, auch mal etwas zu bauen. Teilweise stammen meine Steine aus den 1970ern, 1980er und viel aus den 1990ern - alles passt noch wunderbar aufeinander. Viele Designs von LEGO gehen doch Wege, die ich selber nicht so toll finde. Ausserdem verstehe ich nicht, dass etliche Designs aufgegeben wurden. Letztere Sets findet man dann zu horrenden Preisen auf den einschlägigen Plattformen. Also sah ich mich um, denn das Patent für das Baustein-Prinzip ist abgelaufen und andere Firmen produzieren auch Stecksteine. Sluban ... ist Mist und wird von mir nie mehr gekauft. Die Firma stiehlt von LEGO, hat aber auch interessante Designs. Gerade bei militärischen Sachen findet der Fan einige gut aussehende Sets. Aber die Steine wirken nicht besonders toll, es gibt Macken, die Anleitung kön...