勉強したことのメモ

webプログラマが勉強したことのメモ。

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

   

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

 

■公式サイト

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
);

 

「/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

  関連記事

MySQLのダンプとリストアをコマンドで行う

MySQLのダンプとリストアをコマンドで行う ■ダンプ mysqldump -u ...

Shift_JISでカタカナのソを出力するとエラー

先に結論として5C問題とかいうみたいで仕様らしい。 ■参考サイト http:// ...

PHPでベーシック認証をかける方法

PHPでBasic認証をかけているソースを拝見する機会があり、衝撃だったのでメモ ...

PHPで変数名を動的に変えて使う方法

変数名を動的に変えて使用したかった。 調べてみると可変変数というものがあり、希望 ...

MySQLiでSELECT文

MySQLiでSELECT文 ■データ +--+------+ | id | p ...

独自タグからタグへの変換function

独自タグは##IMG1##みたいな感じ。 画像ファイル名は「ファイルパス/seq ...

CodeIgniterのバージョンの調べ方

CodeIgniterを使っているシステムがあったが、どうも記憶しているディレク ...

MySQLiでINSERT文

MySQLiでINSERT文 ■ソース $mysqli = new mysqli ...

複数の方法で301リダイレクト

サイトのディレクトリやファイル名を大幅に変えるという案件があった。それ自体は問題 ...

MySQLのエラーメール送付

MySQLエラーを取得してエラーメール送付。 <? error_repor ...