Deploying CodeIgniter on Scalingo

Detection

When a PHP application is deployed, we’re looking at the existence of a system/core/CodeIgniter.php file to know if it is using a CodeIgniter.

During the deployment process you’ll see the following output, mentioning that the framework has correctly been detected.

-----> Detected CodeIgniter App
...
-----> Setting up CodeIgniter App

Configuration

You need to configure a couple of files to use CodeIgniter on Scalingo. First modify application/config/config.php:

$config['base_url'] = 'https://test-code-igniter.osc-fr1.scalingo.io/';
// …
$config['index_page'] = '';
// …
$config['uri_protocol']	= 'AUTO';
// …
$config['log_threshold'] = 1;

You probably also need to configure a SQL database. You first need to provision a new database such as Scalingo for MySQL®. Then configure CodeIgniter in application/config/database.php:

$url = parse_url(getenv('SCALINGO_MYSQL_URL'));
$active_group = 'production';
// ...
$db['production'] = array(
  'dsn'	=> getenv('SCALINGO_MYSQL_URL'),
  'hostname' => $url['host'] . ':' . $url['port'],
  'username' => $url['user'],
  'password' => $url['pass'],
  'database' => substr($url['path'], 1),
  'dbdriver' => 'mysqli',
  // …
  'db_debug' => (ENVIRONMENT !== 'production'),
  // …
);

Log files

By default all logs written on stdout are aggregated by Scalingo. For CodeIgniter all files named application/logs/log-$(date).php (default CodeIgniter log files) are also aggregated.

Aggregated logs can be seen in the Logs section of the web dashboard or through the logs subcommand of our Command-Line Tool.


Suggest edits

Deploying CodeIgniter on Scalingo

©2024 Scalingo