htaccess for CodeIgniter subfolder

0

Pünktlich zum 3.0 Relase von CodeIgniter schreibe ich einen Artikel zu dem sehr beliebten PHP-Framework mit dem ich bereits 2 Projekte erfolgreich umsetzen durfte und in dem ich mich auch immer noch sehr wohl fühle.

htaccess for CodeIgniter subfolder

htaccess for CodeIgniter subfolder

htaccess for CodeIgniter subfolder

Es kann möglich sein, das man sein CodeIgniter-Projekt parallel, bzw in einem Subfolder betreiben möchte und dafür ist es nötig „htaccess for CodeIgniter subfolder“ richtig einzurichten.

RewriteEngine On
RewriteBase /cidir
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [L,QSA]

Der hier abgebildete Code für die htaccess-Datei unterscheidet sich nicht wesentlich von dem bestehender PHP-Frameworks. Alles wird auf die index.php gemapped und entsprechend parametrisiert. Die kleine Besonderheit ist hier die Angabe RewriteBase /cidir. Der gibt in der htaccess Datei, die in dem Subfolder cidir liegt, an wie das neue Base-Directory heißt.

PHP-Framework in Subdirectory

Mit der oben abgebildeten Festlegung eines neuen Base-Directories kann man nicht nor CodeIgniter als PHP-Framework in einem Subdirectory betreiben, sondern auch andere wie z.B. Symfony, Zend oer auch CMS-Systeme wie TYPO3 oder WordPress. Der Anwendungsfall ist zwar nicht immer auf den ersten Blick ersichtlich, es kann aber trotzdem nötig sein ein PHP-Framework parallel zu einem CMS-System zu betreiben, damit man es hier als spezielles Backend nutzen kann. Ich hatte hier im letzten Jahr einen Content-Export aus TYPO3 zu XT-Commerce ermöglicht. Das habe ich zwar zu einem späteren Zeitpunkt direkt als TYPO3-Extension implementiert, aber mit CodeIgniter kann man sehr schnell neue Applikationen verwirklichen,, da die Lernkurve deutlich geringer ist.

CodeIgniter als PHP-Framework

Easy PHP Framework

Easy PHP Framework

Ich kann jetzt nicht für die neueste Version des einfachen und schönen PHP-Framewoks sprechen, aber in der 2er Version ist es ein sehr schönes MVC-Framework in dem man sich sehr schnell zurecht findet und man noch Model, View und Controller so nutzt, wie man es damals gelernt hat. Moderne PHP-Frameworks sind ja neuerdings Action-Driven-Frameworks. Hier fällt das Model weg und wird je nach Anwendungsfall unterteilt seperat gespeichert. Models die mit Daten zusammenarbeiten sind beispielsweise Entities. Leider kann ich das hier an der Stelle nicht in 2 Sätzen ausführlich erklären. Symfony ist sicherlich ein tolles und mächtiges PHP-Framework, aber die Lernkurve ist sehr hart und der Weg zum Erfolg auch für sehr gute Programmierer lang. Für Einsteiger ist es in meinen Augen völlig ungeeignet.

Bildquelle htaccess for CodeIgniter subfolder

http://vinaora.com/2010/09/htaccess-and-robots-txt-files-in-joomla/

About Author

PHP Kurs und Inhouse Schulungen für Webdevelopment mit Continuous Integration - Clean Coder, Blogger, Autor, Dozent und Senior Webdeveloper www.rolandgolla.de

Leave A Reply

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.