FuelPHPでログインModuleを作る(1)‐事前準備

こんにちは。hanikunです。

今回は「FuelPHP」と言う、「PHPフレームワーク」のModuleの使い方を事前準備と実際のコード書きの2回に分けて紹介します。

0.FuelPHPの画面

welcome.phpの画面です(FuelPHP設置完了後にページに接続しのWelcome画面です)。

fuelphp_welcome

1.FuelPHPが動く環境の準備

FuelPHPを使ってWebサイトを作るのはApache, PHP, MySqlなどのWEB環境を準備する必要があります。これは色んなどころで書いてあるのでここはFuelPHPに関する部分のみ説明させて頂きます。

1.FuelPHPをダウンロードします(2015/1現在、バージョン1.7.2です)。

2.ダウンロードした圧縮ファイルを解凍します。

3.Apache又はNiginxなどのサーバのページ設定に「解凍したディレクトリの下のpublicディレクトリ」を入力します(私はWinodwsにNginxを使いましたので「niginx.conf」に下記の内容を追加しました。設定は環境により異なります)。

[nginx.conf]
root c:/sigoto/project/fuelphp-login/public;

location ~ \.php$ {
            root           html;
            fastcgi_split_path_info ^(.+\.php)(/.+)$;
            fastcgi_pass   127.0.0.1:8000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  c:/sigoto/project/fuelphp-login/public$fastcgi_script_name;
            include        fastcgi_params;
}

4.設定は終わったらブラウザーで「localhost」または「127.0.0.1」に接続してFuelPHPのWelcom画面が出るかを確認してください。画面が表示されればFuelPHPの設置は完了です。

2. FuelPHPの設定

ここからはLoginモジュールを作る前の準備としてFuelPHPの設定を行います。

1.DBの設定をします。

fuel\app\config\db.phpまたは
fuel\app\config\development\db.phpにDB接続情報を入力します。

<?php

return array(
    'default' => array(
        'type' => 'mysqli',
        'connection'  => array(
                'hostname' => 'localhost',
                'database' => 'database',
                'username' => 'username',
                'password' => 'password',
        ),
        'table_prefix' => '',
        'charset' => 'utf8',
        'profiling'  => true,
    ),
);

2.Configの設定をします。

fuel\app\config\development\config.phpまたは
fuel\app\config\config.phpに設定情報を入力します。内容が多いので変更する情報のみ書きます。

<?php

return array(
	'language'           => 'ja', 
	'locale'             => 'ja_JP.UTF-8', 
	'default_timezone'   => 'Asia/Tokyo',
	'log_threshold'    => Fuel::L_ALL,
	'security' => array(
                'csrf_token_key'   => 'fuel_csrf_token',
                'csrf_expiration'  => 7200,
                'token_salt'       => 'hanikun',
                'auto_filter_output'  => true,
	),
	'module_paths' => array(
                APPPATH.'modules'.DS
	),
	'always_load'  => array(
		'packages'  => array(
                        'auth',
		),
	),
);

3.Authの設定をします。

ログインは認証が必要となります。そしてFuelPHPのAuthとSimpleauthを活用します(auth説明simpleauth説明)。

fuel\app\config\auth.phpにコードを入力します。

<?php

return array(
    // ドライバ
    'driver' => array('Simpleauth'),

    // 複数ログインを有効にする場合、 true
    'verify_multiple_logins' => true,

    // セキュリティのために、ソルトを設定しましょう
    'salt' => 'hanikun',
);

次回は「FuelPHPでログインModuleを作る(2)‐実際のコード」でModuleの実際コードを紹介します。