menu
書いてる野郎
orebike@gmail.com
環境は Linux mint 15
Nginx に PHP をインストールするところまでは Nginx/Linux mint 15にNginxとPHPを入れてみたこちらを参照。
これで Nginx 1.2.6 PHP5.4.9 がインストールされた
Oil コマンドをインストールする
$ curl get.fuelphp.com/oil | sh
Oilコマンドを使ってアプリのひな形を生成する。
開発用ソースコードの置き場所に移動して
$ oil create sample1
こんな感じ
Oilコマンドは内部で最新のFuelPHPの雛形を取ってくるので、現時点ではインストールされるFuelPHPのバージョンは1.7となる。
プロジェクトのディレクトリで
$ php oil -v Fuel: 1.7.0 running in "development" mode
と確認してみても1.7.0が入っていることがわかった
このままだとNginxとFuelPHPはなんの関係もないので、繋ぐ。
/aaa/bbb/ccc/sample1/public
のディレクトリを
http://sample1.localhost/
でアクセスできるように繋ぐ
/etc/nginx/sites-available/default
をコピーして
/etc/nginx/sites-available/sample1
を作る。そしてこのsample1を編集する。こんな感じ。
名前ベースで切り替えるために server_name を指定して root を FuelPHP の public に持ってくる。
日本語を使いたいのでcharset を UTF-8 に設定している。
server {
listen 80;
root /aaa/bbb/ccc/sample1/public;
index index.html index.htm index.php;
server_name sample1.localhost;
charset UTF-8;
location / {
try_files $uri /index.php?$uri&$args;
}
location ~ \.php$ {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
# # With php5-fpm:
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
}
}
location にはすべてのリクエストをフロントコントローラーのパラメータとして渡すように記述する。 PHPの実行の部分はそのまま。
この設定を有効にするために sites-enable にシンボリックリンクを張る
$ ln -s /etc/nginx/sites-available/sample1 /etc/nginx/sites-enable/sample1
ここらで Nginx を再起動しておく。
名前でローカルに持ってくるために /etc/hosts に追記する。
127.0.0.1 localhost 127.0.0.1 sample1.localhost
これで
http://sample1.localhost/welcome/hello
にアクセスできたらOK