/**************************************************
 * 【 モジュール名 】どこでもSSL(anywhereSSL)
 * 【  バージョン  】0.4.1
 * 【   権 利 者   】gusagi
 * 【   作 成 者   】gusagi
 * 【  ライセンス  】GNU General Public License Version 2(GPL2)
 * 【 ホームページ 】http://good-tea.ddo.jp/dev
 * 【メールアドレス】gusagi@sourceforge.jp
 * 【   動作環境   】XOOPS 2.0.12JP以降
**************************************************/

【はじめに】
このモジュールは、SSL/非SSLを1クリックで切り替えるだけのモジュールです。
このモジュールが暗号化を行うわけではありません。
使用の際には、あらかじめSSLを使用出来るようにして下さい。
また、このモジュールはGIJOE氏によるProtectorモジュールのような防御は
行いません。（セッションハイジャックに対してのみ、多少の防御にはなります）
以上、ご注意下さい。

バージョン0.3.0で、全面的な作り直しを行いました。
データベース関連も変更されていますので、古いバージョンをご使用の方は、
一度アンインストールとファイルの削除を行ってから新規にインストールして下さい。
（古いバージョンで行ったmainfile.phpへのハックを残さないように注意して下さい）

なお、このモジュールを使用することで何らかの問題が発生した場合、
開発者は責任を負いかねます。
申し訳ありませんが、使用に関しては自己責任ということでお願い致します。


【概要】
1クリックでSSL/非SSLを切り替えることが出来ます。
SSL/非SSLでXOOPS_URLが異なる場合でも、セッションの継続が可能です。


【機能】
以下の機能を実装しています。
----------------------------------
≪SSL/非SSL切り替え≫
読んで字の如く、1クリックでSSL/非SSLを切り替えます。
----------------------------------
≪セキュア属性の付加≫
SSLページの場合、セッションIDを保存するCOOKIEにセキュア属性を付加します。
----------------------------------
≪セッションIDの再発行≫
オプション機能です。
1アクセス毎に、セッションIDを再発行します。
ただし、タブブラウザで複数のページを同時に開いている場合、最後に開いた
タブのセッション以外が破棄されてしまうのでご注意下さい。
＊SSL/非SSL切り替え時のみ、強制的にセッションIDの再発行を行います。
----------------------------------
≪管理者が指定したページの強制SSL切り替え≫
管理画面で設定したページのアクセスは、強制的にSSLに切り替えます。
----------------------------------
≪ログイン処理のSSL化≫
ログイン処理をSSL経由で行います。
----------------------------------
≪xoops_redirectの書き換え≫
XREAなど一部の環境で正常に動作しない、XOOPSコアのリダイレクト先を
正常なURLに書き換えます。
----------------------------------


【導入方法】
----------------------------------
[新規インストール]
1:通常のモジュールと同様に、モジュールのインストールを行ってください。
2:管理画面で[一般設定]の各項目を設定して下さい。
3:[ブロック・アクセス設定]で、[anywheressl block]の表示設定を行って下さい。
　デフォルトでは[すべてのページ]で[中央-中央]に表示となっています。
　また、[モジュールアクセス権限]と[anywheressl block]へのアクセス権限の
　設定も行って下さい。
4:mainfile.phpに二箇所、以下のハックを行って下さい。
　[color=CC0000]赤字[/color]が修正部分です。

40行目付近:[quote]
[color=CC0000]//[/color]define('XOOPS_URL', 'ノンSSLでのXOOPS_URL');
[color=CC0000]if ( (! empty($_COOKIE['awssl_secure']) && $_COOKIE['awssl_secure'] === 'on') || 
	(! empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] === 'on') ) {
	define('XOOPS_URL', 'SSLでのXOOPS_URL');
} else {
	define('XOOPS_URL', '非SSLでのXOOPS_URL');
}[/color][/quote]

最終行付近:[quote]
if (!isset($xoopsOption['nocommon']) && XOOPS_ROOT_PATH != '') {
	include XOOPS_ROOT_PATH."/include/common.php";
}
[color=CC0000]include_once( XOOPS_ROOT_PATH . '/modules/anywhereSSL/include/precheck.inc.php' ) ;[/color][/quote]
----------------------------------
[アップデート]
0.3.0より古いバージョンをご使用の場合、
一度アンインストールとファイルの削除を行ってから新規にインストールして下さい。

0.3.0〜0.3.3をご使用の場合、
mainfile.phpの40行目付近の判定条件が変更になっておりますので、
[新規インストール]の該当部分を参考にして、判定条件を修正して下さい。
また、ファイル構成の一部が変更になっておりますので、古いバージョンのファイルを
全て削除した上で、新しいファイルをアップロードして下さい。
この場合、モジュールのアンインストールは必要有りません。

0.4.0以降をご使用の場合、
ファイルを上書きアップロードするだけで問題ありません。

【注意事項】
・[anywheressl block]は、[color=CC0000]画面には何も表示されません[/color]。
・[anywheressl block]は、[color=CC0000]必ず[すべてのページ]で表示[/color]するようにして下さい。


【今後の予定】
・未定


【謝辞】
・本モジュールは、GIJOE氏による「myblocksadmin」「Gticket」「mymenu」を
　使用させて頂いています。
　本当にありがとうございます。

・本モジュールのアイコンは、Argon氏が作成して下さいました。
　本当にありがうございます。


--------------

2006年 4月 23日 作成