CodeIgniter is a powerful object-oriented PHP framework that Nathaniel introduced me too. It saves a lot of time and pain by structuring your PHP-based application in a logical way while providing you the tools you need to easily render forms, safely access databases, and much more with minimal code. It also utilizes the popular Model-View-Controller (MVC) design, commonly seen in Java Enterprise and ASP.
Unfortunately, CodeIgniter may not run nicely with certain configurations of PHP and non-Apache web servers due to the handling of the PATH_INFO variable (common diagnosis is only being able to hit your index page, no matter what the URL is). The following sets up PHP and Abyss Web Server to handle this issue.
You’ll want to follow my initial web server setup guide here if you don’t have Abyss and PHP installed yet. After downloading and extracting CodeIgniter 1.7 to the folder I wanted to work out of, I set the server’s documents path (under Configure Host/General) to serve this folder (for reference, the index.php extracted from Code Igniter was at the top level inside this folder).
Configure the following settings in the Abyss Web Console as follows (the breadcrumb trail at the top of the screenshots indicates where these config pages are):
Note: if you want robots.txt (for search engine crawlers) or other paths to be accessible, like image directories, you’ll need to add them as conditions: i.e: Variable: REQUEST_URI, Conditions: Does not match with, Regular expression: robots.txt .
And if all goes well, you’ll now be able to view your CodeIgniter page. For further information about getting started with CodeIgniter, check out these tutorial videos here!