勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ。

DTIのVPSにCodeigniter3を導入する方法

   2024/02/25  PHP CodeIgniter

DTIのVPSにPHPフレームワークのCodeigniter3系をインストールした。その際の設定方法をメモ。

 

公式サイト

https://codeigniter.com/

 

環境

  • CentOS6.5
  • PHP5.3
  • MySQL5.1

 

導入方法

ファイルアップロード

公式サイトからCodeigniterのzipファイルをダウンロードし、任意のディレクトリにアップロードし、コマンドラインでunzipで解凍する。ここではディレクトリを「/var/www/html/hoge.com/code/」と想定する。

設定変更

「/var/www/html/hoge.com/code/application/config/config」の以下の場所を書き換える。

$config['base_url'] = 'http://hoge.com/code/'; //最初は空なのでベースとなるURLを入れる
$config['index_page'] = ''; //最初はindex.phpが入っているので削除する

後者のindex_pageなんだけど、CodeigniterではURLに「http://hoge.com/code/index.php/xxx/」みたく、index.phpが入ってしまう。config.phpで削除しておくと入らなくなった。

データベース設定

「/var/www/html/hoge.com/code/application/config/database」の以下の場所を書き換える。

$db['default'] = array(
    'dsn'    => '',
    'hostname' => 'localhost',
    'username' => 'MySQLのユーザー名',
    'password' => 'MySQLのパスワード',
    'database' => '使用するデータベース名',
    'dbdriver' => 'mysqli',
    'dbprefix' => '',
    'pconnect' => FALSE,
    'db_debug' => (ENVIRONMENT !== 'production'),
    'cache_on' => FALSE,
    'cachedir' => '',
    'char_set' => 'utf8',
    'dbcollat' => 'utf8_general_ci',
    'swap_pre' => '',
    'encrypt' => FALSE,
    'compress' => FALSE,
    'stricton' => FALSE,
    'failover' => array(),
    'save_queries' => TRUE
);

htaccess設定

「/var/www/html/hoge.com/code/」直下に以下htaccessファイルを作成する。

RewriteEngine on
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteRule ^(.*)$ /code/index.php/$1 [L]

今回はルートディレクトリ直下にcodeディレクトリを作ってその下にCodeigniterを置いているけど、ルートディレクトリ直下に置く場合は、

RewriteEngine on
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteRule ^(.*)$ /index.php/$1 [L]

こうなるっぽい。3行目が異なる。

以上で導入は完了。

 

その他

リファレンスについて

困ったら以下リファレンスを見る。

http://codeigniter.jp/user_guide_ja/toc.html

すごくシンプルに書かれていて見やすい。

フレームワーク名

コードイグナイターと読むらしい。igniterは点火装置という意味とのこと。

使ってみた感じ

CakePHPより機能面では劣るっぽいのと、検索したときに日本語の検索結果が少ない。その反面、フレームワークとかMVCとかちゃんと理解していなくても直感で組みやすい。それが良いかどうかは置いておいて、最初に手をつけるのにはありじゃないかと思った。

 - PHP CodeIgniter

  関連記事

CodeIgniter4で簡易版ログインシステムの実装方法(管理画面向け)

CodeIgniter4で管理画面向けの簡易版ログインシステムを作成したい。通常 ...

Codeigniter4でMySQLに接続しCRUD操作する方法

Codeigniter4.4.4でMySQLに接続しCRUD操作したい。また、任 ...

CodeIgniter4でフォームからファイルをアップロードし保存する方法

CodeIgniter4.4.4でformから画像等のファイルをアップロードし、 ...

CodeIgniter4で独自の404ページを表示する方法

CodeIgniter4にて存在しないページをブラウザから開くと、デフォルトの状 ...

CodeIgniter4 & jQueryを用いて同一サイト内でajax通信する方法

CodeIgniter4.4.4 & jQueryを用いて同一サイト内で ...