Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
Help us understand the problem. What is going on with this article?

Codeigniter 3. Authなパッケージを使う

More than 5 years have passed since last update.

1. Ion Auth というのを使う。

ここを見た。
http://blog.pisyek.com/5-best-authentication-libraries-for-codeigniter/
4番目の Ion Auth

Composerでできた vendorディレクトリあたりに git clone してくる。
third_partyとかの方がいいのかな、まあいいや。

$ mkdir vendor/benedmunds
$ cd vendor/benedmunds
$ git clone git@github.com:benedmunds/CodeIgniter-Ion-Auth.git
# 例えば
/
├── .htaccess
├── application
├── composer.json
├── composer.lock
├── index.php
└── vendor
    ├── autoload.php
    ├── benedmunds
    ├── codeigniter
    ├── composer
    └── mikey179

そして、apprication/config/autoload.phpを編集する。

autoload.php
$autoload['packages'] = array('vendor/benedmunds/CodeIgniter-Ion-Auth');

READMEにもあるとおり、Codeigniter 3を使う人は、modelファイルのファイル名を、頭の文字大文字に変更する。

models/ion_auth_model.php  =>   models/Ion_auth_model.php

2. テーブルを作る

落としてきたファイルの、sql内のどれかを使えばテーブルができる。

3. サンプル

controllers内の auth.phpがサンプルなので、apprication/controllersにコピーしてくると動作が確認できる。modelファイル同様 Codeigniter 3では、ファイル名の頭を大文字にする Auth.php。

http://(my_site)/index.php/auth のようにするとログイン画面が開く。


login_img.png

4. Codeigniter 3.0.3

なんか動かないと思ったら、バージョンアップの影響があった。

Changed Config Library method base_url() to fallback to $$_SERVER['SERVER_ADDR'] when $config['base_url'] is empty in order to avoid Host header injections.

脆弱性があるから、手動で設定しなさいということらしい。そうしないとローカルのIPアドレスが入る。

taz-jpn
exidea
世界最先端のデジタルマーケティングを追求しており、その力を活かせる複数の事業領域でイノベーションの創出に取り組んでいます。様々な分野のWEBメディア・WEBサービスの開発・運営・グロースハックを行っています。
https://exidea.co.jp/
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away