*E71にMWSをインスコ! [#oaf5033f]
PAMPではmod_pythonが使えないみたいだったので、PAMPをアンインストールし、MWS(Mobile Web Server)をインストールすることにしました。
結論としては、以下のサイトからSISファイルをダウンロードしてインスコするだけで使えました!
しかし、ここに至るまでにかなり試行錯誤したので、記事の後ろにその軌跡を残すことにしました。
よって、MWSを使うために必要な情報は上の方だけです笑
**MWSをインスコ! [#v5ed5d75]
なにやら、以下のサイトでMWSのパッケージが配布されているみたい。
http://mymobilesite.net/
なんか、ここで登録すると、このサイトのサービスでドメイン登録し、MWSのコンテンツを公開したり、このサイトとコンテンツの連携ができるみたい。
興味がある人は登録するとよし。
今回は、とりあえずE71上でMWSをインスコし、PythonでWebプログラミングをしたいだけなので割愛。
以下のサイトより、インストール用SISファイルをダウンロードします。
-http://mymobilesite.net/download/
ここのサイトの中の真ん中の「Download Mobile Web Server version 1.5.1 beta 1&2)」をダウンロードします。
ダウンロードしたSISファイルをBlueToothで転送し、E71でインスコ!
インストール先はメモリカードを指定したほうが、何かと便利です。
途中で、ドメイン名とパスワードの入力を求められますが、ここでは適当に入力してOK!
※事前にmymobilesite.netでユーザ登録(ドメイン登録)した場合、それを入力します。
インスコ完了後、MWSが起動し、ブラウザを起動するか聞かれるので、OKを選択。
すると、何やら画面が表示される!が、これは無視して閉じる。
ちなみに、インスコ完了するとInstrationフォルダ内に、「''Web Server''」が表示されます。
**初期設定 [#y2cefa33]
さっそく起動すると、以下の画面が表示されます。
&ref(Screenshot0019.jpg);
この画面の右上の「''Stopped''」がMWS(HTTPD)のステータスになります。
次に、初期設定を実施します。メニューの「''Settings''」を選択します。
&ref(Screenshot0020.jpg);
設定項目は以下のとおり
|項番|項目|意味|内容|
|1|Name|mymobilesite.netに登録したドメイン名を設定する|*******|
|2|Password|登録したパスワード|******|
|3|Access Point|MWSを起動したときに接続するアクセスポイントAllways askとUser-defineの2種類がある。|Allways ask|
|4*|Connection type|接続のタイプを指定する。Internet or local or Allways askの3種類がある|Allways ask|
|5|Roaming worning|ローミングした場合に警告する?|デフォルト(ON)|
|6|Remote start|リモート起動|デフォルト(OFF)|
|7|Automatic start|自動起動設定|デフォルト(OFF)|
|8|Connection filter|コネクションフィルター?|デフォルト(OFF)|
|9|Traffic limit|トラフィック制限?|デフォルト(OFF)|
|10|Battery limit|バッテリー制限?|デフォルト(Battery Level 15%)|
まあ、基本的にはだいたいデフォルトでOKですが、項番1、2、4については変更してます。
特に、項番4を設定変更しないと、MWSを起動するたびにInternetに接続しようとする。これはちょっと面倒くさいので、起動するたびに''Internet''か''Local''を選択できるように、「''Allways ask''」を設定する。
初期設定はこれで完了!
改めて、MWSを起動します。
先の画面の左シフトボタンー>「Start server」を選択!
&ref(Screenshot0021.jpg);
「''Select connection type''」と聞かれるので、Local(右シフトボタン)を選択!
&ref(Screenshot0022.jpg);
「''Establish network connection?''」と聞かれるので、No(右シフトボタン)を選択!
&ref(Screenshot0024.jpg);
すると、起動完了!&br;
右上のステータスが「''Runnning locally''」となる。
&ref(Screenshot0025.jpg);
これで、internetに接続されていない状態でMWSが起動した状態となる。
ここで、Hide(右シフトボタン)を選択すると、バックグランド起動状態となる。
**ディレクトリ構成 [#wc0452ef]
MWSをメモリカードにインスコした場合、
-E:\DATA\Web server\
にMWSのユーザデータが保存される。
&ref(Screenshot0026.jpg);
インストール後のディレクトリ構成は以下のとおり
E━data━Web server┳Data
┣conf
┣htdocs┳Framework
┃ ┣Web_Applications
┃ ┗rest
┗logs
htdocsの中には、デフォルトでインストールされるWebアプリが入ってます。
※個人的には、しばらくしたら(ソースを一通り読んだら)消すつもりです笑
**静的デモページ作成(static web page) [#ib6b7949]
まず、デモ用のディレクトリをhtdocsディレクトリに作成します。
作成後のディレクトリ構成は以下のよ鵜になります。
E━data━Web server┳Data
┣conf
┣htdocs┳Framework
┃ ┣Web_Applications
┃ ┣rest
┃ ┗demo ← 今回作成
┗logs
作成したディレクトリに、デモ用html及び画像を格納します。ソースは以下のとおり。また、画像はこのページに「demo.jpg」で添付します。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN">
<html>
<head>
<title>MWS demonstration page</title>
<meta Name="description" Content="Static web page for the MWS" />
</head>
<body bgcolor="#ffffff">
<h1>Example webpage</h1>
<br />
This web page is made to demonstrate the Mobile Web Server.<br />
<br />
<img src="demo.jpg" alt="E71" />
<br />
</body>
</html>
さて、資材の設置が終わったら、さっそくMWSを起動して(前述のとおり)、E71のブラウザから以下のURLにアクセスします。
-http://127.0.0.1/demo/demo.html
以下の画面が表示されれば成功!
&ref(Screenshot0027.jpg);
***Pythonによる動的デモページ作成 [#z94db40e]
Pythonによる動的デモページ作成では以下の2ファイルを作成します。
-demo.py : 動的ページの本体
-ht.acl : アクセスリスト
これら2ファイルを作成し、demoディレクトリ配下に配置します。
それぞれの内容は以下のとおり
■demo.py
def handler(req):
# Import necessary Apache modules
from mod_python import apache
# Set correct content type to request
req.content_type = 'text/html'
# Generate simple HTML page
req.write("<html><h1>Example webpage with Python</1h></HTML>")
# Return apache.OK to indicate that page handling was successful
return apache.OK
■ht.acl
# setting Handler
SetHandler mod_python
# Add Python Handler
PythonHandler demo
# Debug On
PythonDebug On
# Option OFF
Options None
ファイルを配置したら同じく、ブラウザから以下のURLにアクセスします。
-http://127.0.0.1/demo/demo.py
以下の画面が表示されれば成功!
&ref(Screenshot0028.jpg);
実際に動的画面が表示されると、感動しますね〜
*試行錯誤の軌跡 [#s9850581]
さて、このMWS、NOKIAのサイト(以下のリンク)を見るに、色々事前にインストールしなきゃいけないみたい
-http://wiki.opensource.nokia.com/projects/MWS:Installation#Gateway_Account
色々事前にインストールしなきゃいけないみたい
-OpenC
-Python for S60
まあ、Pythonは既にインスコしているが、''Open C''がよくわからん。