- 追加された行はこの色です。
- 削除された行はこの色です。
*E71:MWSチュートリアル [#j1f73590]
MWSでの静的、動的コンテンツの作成について、やってみた記録をのこします。
ちなみに、この記事は、
-''Mobile Web Server : How to Develop Content''
という文書を元に作成してます。
上述の文書はNokiaForumからDLできます。
-http://www.forum.nokia.com/info/sw.nokia.com/id/25e274f6-9d64-42a9-b1a8-0bf46f5e3d62/Mobile_Web_Server_How_to_Develop_Content_v1_0_en.pdf.html
ちょっと古いけど、MWSを導入してから一番最初に読む、やるにはちょうどいい内容となってます。
フランクに和訳的な内容となるよう頑張ってみてます笑
※大体同じことをやりますが、一部内容が異なる部分がありますのでご注意ください。
#contents
*イントロダクション [#x898d41c]
まあ、これを読めば、MWSでのコンテンツってこんな感じで作りますよ〜って雰囲気がわかります。
MWSでは、静的コンテンツに加え、mod_python(Python Module)をつかった動的コンテンツも公開できます。
**Content Examples [#v83d2de6]
この文書ではベーシックな静的ページ、動的ページのデモを紹介します。
デモでは7つのファイルを作成します。
静的ページのデモでは以下の3ファイルを作成します。
-index.html ー 基本的なhtmlファイル
-ht.acl ー 公開フォルダのアクセスリスト設定ファイル
-demo.jpg ー デモで使用する画像ファイル
動的ページのデモでは、Webページを生成するコンピュータプログラムであるPythonスクリプト言語を利用し作成します。
このプログラムはユーザのWebブラウザからリクエストを受け取った際にサーバ上で起動します。
このリクエストの中に、スクリプトがページを作成するにあたり必要となるすべてのデータが含まれてます。
プログラムの起動後、作成されたWebページはブラウザに送信されます。
動的ページは、表示させるためには常に動作中のサーバが必要です。(スクリプト単体では表示できません)
この文書では以下の2つの動的ページをデモします。
-Pythonを利用した静的ページを生成するサンプル
-上記サンプルをアップデートしての動的ページを生成する機能的なサンプル
上記2つのサンプルは以下のファイルで構成されます。
-ht.acl ー 公開フォルダのアクセスリスト設定ファイル
-indexbasic.py ー 動的ページを生成するためのPythonスクリプト(2)
-index.py ー 動的ページを生成するためのPythonスクリプト(1)
-plain.psp ー 動的ページ生成用のテンプレート
-form ー フォーム生成用のテンプレート
-demo.jpg ー デモで使用する画像ファイル
**開発する環境について [#w6da9535]
最低限必要となる環境は以下の通り
-コンピュータ
-ブラウザ
-テキストエディタ
-WLAN環境
-MWSがインスコされた携帯
**ディレクトリ構成 [#jafba826]
MWS1.5.1betaインスコ直後のディレクトリ構成は以下の通り&br;
※MWSはEドラにインスコしてます。
E━data━Web server┳Data
┣conf
┣htdocs┳Framework
┃ ┣Web_Applications
┃ ┣rest
┗logs
*静的デモページ作成(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);
**JavaScriptを利用 [#g0ded16a]
先の静的ページに以下のJavaScriptコードをbodyダグの中に埋め込みます。
<br /><script>
<!--
var today_date= new Date()
var month=today_date.getMonth()+1
var today=today_date.getDate()
var year=today_date.getYear()+1900
document.write("Today's date is: ")
document.write(month+"/"+today+"/"+year)
//--> </script>
***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);
実際に動的画面が表示されると、感動しますね〜