携帯からPC操作(cell4win51)Webサーバとの共存編
Webサーバとは別のポートを、cell4win51用に外部に公開してしまえば共存は可能ですが、
ここで説明しているのは、外部とのアクセスはWebサーバだけにして
「Webサーバ」と「cell4win51」との間で内部通信を行う方法です。
以下では具体的な設置例を述べています。
index.cgi の $hostadr を "localhost" もしくは "127.0.0.1" に書き換えます。
今回の例では index.cgi は、8080ポートを使っていますが、もちろん変更可能です。
index.cgi の $port で指定したアクセスポートと同じポートを cell4winReg.exe で指定してください。
WWWサーバとcell4win51を同じPCにもできますし、別PCとすることもできます。
別PCとする方法はいくつかあります。
・cell4win51の入ったPCの8080ポートを開け、WWWサーバから流す。
・ルータ側で特定の条件を満たすパケットだけを「WWWサーバ+cell4win51」のPCに流す。
(特定の条件とはドコモからのIPや識別番号を指します。)
現在のWindowsなら全てのPCにWWWサーバを立てることも可能ですので
ページルートのWWWサーバにコントロール用のWEBページを作成して
端末毎にアプリを変えたり、公開PCを切り替えていく、なんてことも可能です。
ちょっと話が横道にズレますが...
中継サーバを利用する編との違いは、index.cgiをPC内部に置いている点です。
外部に置くとセキュリティ面でのデメリットが大きいですが
内部に置くことでlocalhost上でのみ複数ポートを利用するため、特に設定不要であり、
外部に対してはWWWポート(一般的にセキュリティ実装が高く、設定面での解説も充実している)
のみ開ければ済みます。
携帯からの通信にSSL(443)を使うのは単純で、https://でアクセス可能なフォルダに
index.cgi、cell4win51.jam、cell4win51.jarの3ファイルを置くだけです。
(index.cgi の $port を 8080 に変更して下さい)
SSLの利用如何に関わらず、上り(携帯→PC)のリクエストに簡易暗号を使っていますが
より強固なセキュリティを要求される場合はBasic認証も併せてお使い下さい。
正式な認証機関(VerisignやBaltimore)に登録するのは費用が掛かりますが、
最近、ドコモ社でもサービスを始めたFirstPassでは多少費用が抑えられます。
とはいえ、インターネット商店を出すわけではありませんので
自己認証(PrivateCA)を使って無料でSSLをやられる方も多いと思います。
設定が長いのでここでは説明しませんが、XP/2000で自己認証型のSSLに対応するには、
OpenSSLを使うのが一般的です。
ご自分のWEBサーバの運用体系を考慮してご検討下さい。
さて、具体的な設定例として
WindowsXP IIS5 + ActivePerl + cell4win51 のセットアップ方法を記します。
1.WindowsXP SP2及びパッチのインストール。
→これは述べるまでもありませんね。
2.ActivePerlのインストール
現状では5.8がリリースされています。
英語なので敷居が高いかもしれませんが http://www.activestate.com/ からインストールしてください。
Googleなどでactiveperlを検索すると有用な情報が見つかると思います。
インストールでは特に注意する点はありません。(少なくとも5.8.7.813までは)
Apacheと共用される方はC:\usr\bin\perlにインストールされた方が後が楽ですが
今回はdefaultでC:\Perlでインストールします。
3.公開用ユーザの設定
→少なくともadministratorで公開するのは止めましょう。
設定時はadministrators権限を与え、運用時にUsers権限に落とすようにしてください。
ここでは、コントロールパネル→ユーザアカウントで管理者権限を持った「abcde」
というユーザを作ったという仮定で話を進めます。
ログオン方式も「ようこそ」を使用しないようにしましょう。
4.abcdeでログオン後、コントーロールパネル→「プログラムの追加と削除」→
「Windowsコンポーネントの追加」→「インターネットインフォメーションサービス」
で「インターネットインフォメーションサービス」を選びインストールします
5.新しいユーザabcdeでログオンし直し、コントーロールパネル→「パフォーマンスとメンテナンス」→
「管理ツール」→「インターネットインフォメーションサービス」と進みます。
既定のSMTPは必要なければ止めてください。
6.弊社ソフトウェア(index.cgi, cell4win51.jam, cell4win51.jam)をIISの既定フォルダ
(通常はC:\InetPub\wwwroot)に展開します。
このとき余計なファイル(iisstart.asp,localstart.aspなど)は削除した方が良いです
index.cgi の $port は 8080 に変更して下さい。
7.続いて、コントーロールパネル→「パフォーマンスとメンテナンス」→「管理ツール」→
「インターネットインフォメーションサービス」と進みます。
8.「既定のWEBサイト」でプロパティ→ホームディレクトリ→アプリケーションの設定で「構成」を選びます。
マッピングで追加を選び、図のように「.cgi」を追加します。
図のように%s %s を必ず付けてください。
9.ローカルでの確認を行います。
「既定のWEBサイト」でindex.cgiを選び→プロパティ→「スクリプトソースアクセス」にチェックを入れます。
WEBサイトを再起動し、IEから「http://localhost/index.cgi」を入力します。
うまくいけば、cell4win51のダウンロードページが開きます。
10.「既定のWEBサイト」のプロパティ→ドキュメントで「既定のドキュメントを有効にする」の最上段に
「index.cgi」を追加します。(その他のファイルを消すとセキュリティが高くなります)
IEから「http://localhost/」を入力するとcell4win51のダウンロードページが開きます。
11.コントロールパネル→「ネットワークとインターネット接続」→「Windowsファイアウォール設定を変更する」
で「例外」タブ→「ポートの追加」を選びます。
名前に「WWW」・ポートに「80」(TCP)を入力して下さい。
戻った画面でWWWにチェックが付いていることをご確認下さい。
12.ルータの設定
まず、公開PCに固定のローカルIPを割り振ってください。
機種毎に設定が違いますので一概に言えませんが
通常のWWW公開設定を行ってください。
IP FILTERの設定で公開PCのIPを「pass in」(Port80)に設定する。
NATの設定で公開PCのIPにWWW(80)を通す。といった変更です。
詳しくはお使いのルータマニュアルをご参照下さい。
うまくいっていれば、外部PCから「http://www.xxxxx.co.jp/」にアクセスすれば
cell4win51のダウンロードページが開きます。
13.サーバソフト設定
管理者権限でサーバ側設定ソフト(cell4winReg.exe)を起動します。
レジストリ \\HKEY_LOCAL_MACHINE\SOFTWARE\HUNDREDSOFT\CELL4WIN\
に設定内容を書き込みます。
※SSLポート番号は空にしてください。
※パスワードは必ず設定してください。安全のため8文字以上を推奨します。
このパスワードと同じものを、iアプリ実行画面で入力します。
※「携帯から直接接続する」のチェックは、はずします。
※「追加の許可IP」は、空にします。
※携帯からの画像投稿(PicSend)を受け付けない場合は、受信フォルダは空にしてください。
例えば、XPで投稿写真をデスクトップに貼り付けるなら
C:\Documents and Settings\(ログイン名)\デスクトップになります。
※ログフォルダを指定すると日付毎に通信ログファイルを出力します。
(例、C:\cell4win51\log\01.log〜31.log)
※Capture以外必要ない方は、マウス操作〜ダウンロードまでのチェックをはずしてください。
[OK]をクリックすればレジストリに書き込みます。
cell4win51.exe を起動すれば、サーバ側の準備は完了です。
(ipnotify.exe や start_ipnotify.bat は必要ありません。)
14.アプリ起動
携帯から「http://www.xxxxx.co.jp/」にアクセスし、アプリをダウンロードします。
サーバ側でcell4win51を起動し、携帯側でアプリを起動します。
13.で設定したパスワードを携帯でも「Password」に入力します。
携帯側でCaptureをクリックすれば、公開PCの画面が開きます。
※大きな問題は、「12.ルータの設定」で発生します。
WWW公開ができるルータであれば、ほとんどの場合に問題なくアプリ起動できます。
※待ち受けアプリに設定した場合は、キャプチャ画面中に待ち受けキー(FOMAの場合はCLRキー)を
押すことで、待ち受けとして動作開始します。
Intervaltime(sec)で設定した時間(秒単位)毎に自動でCaptureを行い表示します。
..... 戻る .....
※本書の内容の一部、または全部を無断で転載することを禁止します。
※本書の内容については、将来予告なしに変更することがあります。
※WindowsおよびMicrosoftは米国Microsoft Corporationの登録商標です。
その他の商品名は各社の商標または登録商標です。
ご意見ご要望は、info@hundredsoft.jp まで
Copyright (C) 2005-2008 HUNDREDSOFT CORPORATION All Rights Reserved.