29
29

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

[FuelPHP]開発環境によってSSLの適用を変更する

Last updated at Posted at 2014-06-08

今回は、
http://qiita.com/maximum80/items/5f262cda259036e79346

を活用して、
「本番環境ではSSLを適用したいけど、開発環境(ローカル)では、SSLは対応させたくない!」という事例を実際に対応してみたいと思います。

#1.uri.phpの設定

SSLの判別にはUriクラスを活用しています。

上記を参照してみてください。

$ mkdir fuel/app/classes/extension/
$ vim fuel/app/classes/extension/uri.php

で、uri.phpを作成します。
中身は

uri.php
<?php

class Uri extends Fuel\Core\Uri
{
        public static function generate($uri = null, $variables = array(), $get_variables = array(), $secure = null)
        {
                //開発環境(ローカル)の場合はhttps通信をOFFにする
                $secure = Config::load('secure');
                $secure = $secure['validation'];

                return \Uri::create($language.$uri, $variables, $get_variables, $secure);
        }
}

的な感じで、config内のsecure.phpを読み込むように設定します。
この場合、secure内の'validation'の値を返すようにしています。
(Trueならhttps、Falseならhttpになる)

#2.secure.phpの設定

$ cd fuel/app/config
$ vim secure.php

で、secure.phpを作成

secure.php
<?php

return array (
        'validation' => True
);

てな感じで、基本的にはTrueを返すようにする。

次に、

$ cp secure.php /development

で、コピー。develop内のsecure.phpを

secure.php
<?php

return array (
        'validation' => False
);

で保存。

これで開発環境では$secureがFalse
それ以外では$secureがTrue

という設定が完了。

#3. viewファイルの設定

それぞれのviewファイルでの読み込みを

<a href="<?php echo Uri::generate("contact", array(), array(), null); ?>

といった具合の書き方をします。

29
29
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
29
29

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?