ウェブ、ショウジン

Ubuntu ServerにCodeIgniter 2.0をインストール

2011-2-6
Category
PHP

低い学習コストと実行速度の速さが特徴らしいCodeIgniterというPHPのフレームワークが、ここ最近俄に熱く盛り上がっている、ぽい。(CodeIgniter単体?での初の日本でのカンファレンスが今月あることも関係しているのか)

日本CodeIgniterユーザ会

カンファレンスはかなり注目のようで、オレも申し込んだけどいまんところキャンセル待ちで、参加は無理そう(T_T)

前にちょこっとだけいじったことあるんだけど、実際に何か作るところまではいかず頓挫。これを機会にまたトライしてみようかなと思って、とりあえずここ数日で用意した仮想マシン上のUbuntu Serverにインストールしてみる。

2011年2月9日:追記
日本CodeIgniterユーザ会のページを見ていたら、ちゃんとインストールについて説明してくれている箇所があった。

CodeIgniter は次の4つのステップでインストールできます:

1. ZIP パッケージを展開します。
2. サーバに CodeIgniter のフォルダとファイルをアップロードします。通常は、index.php ファイルがルートになります。
3. application/config/config.php ファイルをテキストエディタで開き、ベースURLを記入します。暗号化、もしくはセッションを利用する際には暗号鍵を記入します。
4. データベースを使用する際には、 application/config/database.php ファイルをテキストエディタで開き、データベースの設定を記入します。

CodeIgniter ユーザガイド 日本語版 Version 2.0.0「インストール方法」に、より詳しいことが書かれている。(目次ページから、その他の項目も閲覧できる)

2011年2月9日:追記ここまで。

VMware Fusionを立ち上げて、仮想マシンのUbuntuにTerminalでリモートログインして操作する。

Webドキュメントルートの/var/wwwに移動して、wgetコマンドでdownload.phpを取得。(あとで解凍するとこの時点での最新版2.0.0が出現する)

$cd /var/www
$ wget http://codeigniter.com/download.php

ダウンロードしたdownload.phpをunzipで解凍する。

$ unzip download.php
The program 'unzip' is currently not installed.  You can install it by typing:
sudo apt-get install unzip

あ、まだこの環境作ったばっかりだから足りないものたくさん。unzipも入ってないので、ここでインストールする。(メッセージに従って、詳細は割愛)

再度unzipコマンドで解凍。今後は無事解凍されて「CodeIgniter_2.0.0」というディレクトリが出現する。

ブラウザでアクセスしてみる。

http://UbuntuのIPアドレス(/var/www)/CodeIgniter_2.0.0

パーミッションで蹴られてForbidden。

chmodでパーミッション設定。とりあえずCodeIgniter_2.0.0/を755にしてみる。

$ chmod 755 CodeIgniter_2.0.0

再度上記URLでもってブラウザからアクセス。

installed CodeIgniter 2.0

Welcome to CodeIgniter!の画面が表示された。

とりあえずこれで使えるようになったのだろうか。いや、もちろん実際はいろんな設定ファイル(application/config内のconfig.phpとかdatabase.phpとか)をこれから適宜、いじっていかないといけないんだろうけど。その他も。

とりあえず、今日はここまで。

あ。このままだと毎回長いURLを叩かないといけないので(CodeIgniter_2.0.0)、ci2としてシンボリックリンクを張っておく。

$ ln -s CodeIgniter_2.0.0 ci2

これで

http://UbuntuのIPアドレス(/var/www)/ci2

でブラウザからアクセスできるようになった。

このままだとCodeIgniterのsystemディレクトリが公開領域にあってセキュリティ上好ましくないので、これを移動して設定を変更する。

CodeIgniterのsystemというディレクトリ以下のファイルは、Webブラウザからアクセスされる必要はなく、Webの公開領域に置いたままにするのはセキュリティ上、好ましくないので、これをとりあえずApacheのルート直下に移動させる。(この位置が妥当なのかは分からないけど)

$ sudo mv /var/www/CodeIgniter_2.0.0/system/ /

systemディレクトリを移動させたので、このままだとインストール完了時に表示されていたCodeIgniter_2.0.0/index.phpの内容がブラウザで表示されなくなる。

これを解消するには、systemディレクトリへのパスを変更する必要がある。

CodeIgniter_2.0.0/index.php

$system_path = "system";

上記部分を以下に変更。

$system_path = "../../../system";

これでまた、CodeIgniterをインストールしたディレクトリにブラウザでアクセスすると「Welcome to CodeIgniter!」画面が表示されるようになった。

ついでに、動作に関する基本設定の情報が記述されているconfig.phpの内容を一部変更してみる。

/var/www/CodeIgniter_2.0.0/application/config/config.php

$config['base_url']     = 'http://192.168.104.129/ci2/';
// ↑サイトのURLを設定 自分は仮想マシンにインストールしたのでこうした
// デフォルト状態では空欄になっている

あと、使用する言語がデフォルトではenglishなので、これをjapaneseに。

$config['language']     = 'japanese';

ついでに、超簡単な「こんにちは世界」を表示させてみる。

/var/www/CodeIgniter_2.0.0/application/controllers/hello.php

<?php
class Hello extends CI_Controller
{
    function index() {
        echo 'こんにちは世界';
    }
}
?>

CI_Controllerの部分はver.2より前はControllerだった気がする。実際、この部分はControllerでは動作しなくて、CI_Controllerに変更したら動くようになった。

これで

http://192.168.104.129/ci2/index.php/hello/index

にブラウザでアクセスしてみる。

「こんにちは世界」が表示された。

とりあえずCodeIgniter 2.0のインストールと「こんにちは世界」の表示まで、以上。

CodeIgniter徹底入門
CodeIgniter徹底入門
posted with amazlet at 11.02.06
河合 勝彦 鈴木 憲治 安藤 建一
翔泳社
売り上げランキング: 15312

Categories

Tag Cloud

AdMob Android Apache centos CodeIgniter EC-CUBE facebookアプリ facebookページ feed Firefox Flash google googleanalytics htaccess iPad iPhone JavaScript lamp mobile nginx ogp pear php plugin rollover rss sendmail setting smarty ssh Titanium Mobile Titanium Studio tutorial ubuntu vim VirtualBox vmware vps Windows WordPress xampp youtube さくらインターネット アクセス解析 カスタム投稿