明輝手游網(wǎng)中心:是一個免費提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺!

WML,Apache,與 PHP 的說明

[摘要]在公司的網(wǎng)站中, 我發(fā)現(xiàn)需要一個可以無線接收我的電子郵件,股市資訊等. 不想要付錢給人來得到我要的資訊, 我決定了開發(fā)一個無線網(wǎng)站.這樣的資訊在網(wǎng)際網(wǎng)路上是沒問題的,但是它被分散得難以收集。我需要可以執(zhí)行 php ,存取資料庫,并且我需要 PHP 為我做另外的功能。這篇文章含蓋了wml 的基礎(chǔ), ...
在公司的網(wǎng)站中, 我發(fā)現(xiàn)需要一個可以無線接收我的電子郵件,股市資訊等. 不想要付錢給人來得到我要的資訊, 我決定了開發(fā)一個無線網(wǎng)站.這樣的資訊在網(wǎng)際網(wǎng)路上是沒問題的,但是它被分散得難以收集。我需要可以執(zhí)行 php ,存取資料庫,并且我需要 PHP 為我做另外的功能。這篇文章含蓋了wml 的基礎(chǔ), 如何建立你的 apache Server 和 php 。這些基礎(chǔ)可讓你建立環(huán)境并且自己學(xué)習(xí)往後的應(yīng)用.
 

需 求
你要對 Apache Web Server, Php 和 html 有點經(jīng)驗. 對系統(tǒng)的要求來說,我是用 apache 1.3.9, php3, 和 Red Hat Linux 6.0 來示范. 我還沒碰到在 windows 上跑 Apache, 和 PHP3 或 PHP4 上的任何問題.

在這篇文章,我將指導(dǎo)你接觸的領(lǐng)域: wml 的介紹,在 Apache 上設(shè)定無線 appications ,并且建立你的第一個 WML/PHP 網(wǎng)頁.大部份的資訊可從網(wǎng)際網(wǎng)路上收集.

WML 簡 介
WML 代表無線的標(biāo)注語言. WAP 電話或類似的設(shè)備被用來以 WML 寫成的網(wǎng)頁。WML 基于它類似於 XML 的句法和 scrictness 。使用過了 html 的任何人將不有問題學(xué)習(xí) WML 。許多標(biāo)簽和屬性是一樣的,況且標(biāo)簽不多. WML 允許程式開發(fā)者開發(fā)動態(tài)的內(nèi)容, 盡管為這篇文章我們將以PHP作為動態(tài)的語言.

WML 基 礎(chǔ)
在 WML 你能使用許多子頁 ( 叫 "cards'' ) 在一個 WML 頁中 (叫 " deck") .每個 WML card 的作用像在網(wǎng)頁中被顯示的內(nèi)容.下列將是我們 .wml 頁的例子 。在我的 Server 上,我在 ~ /wireless/home.wml 儲存了這個檔案

  <wml>
   <card id='home'> <p> 我的第一個測試頁 </p>
   </card>
   </wml>

不同于 HTML ,如果你不colse 標(biāo)簽, 例如 <wml> </wml>,則你的程式碼將不正確. 此例子會在任何無線的設(shè)備上產(chǎn)生一簡單的測試信息“我的第一個測試頁”。

設(shè) 定 Apache
好, 現(xiàn)在有趣的部分.為了 apache 能 catch 住無線設(shè)備到訪你的Server, 你需要建立你的 httpd.conf ( 我的檔案位於 /etc/httpd/conf/) 檔案, 我用 PHP3 因此所有的變化會被記錄。在你開始以前,你可以備份你的 httpd.conf 檔案,以防萬一:)

步驟 1 :第一, 我們需要 AddType 功能增加一新的 MIME 類型。你需要到你定義 php 的 Script 中?雌饋硐裣旅嬉粯樱

<IfModule mod_php3.c>
AddType application/x-httpd-php3 .php3 .php .phtml

AddType application/x-httpd-php3-source .phps

</IfModule>

要改為:

 

<IfModule mod_php3.c>
AddType application/x-httpd-php3 .php3 .php .phtml .wml

AddType application/x-httpd-php3-source .phps
</IfModule>

這會用 PHP compiler 在所有的 .wml 頁.

步驟 2 :去除Mark(Uncomment)apache Load Module 和 Add Module

變更:


#LoadModule rewrite_module modules/mod_rewrite.so

#AddModule mod_rewrite.c
 

成:

LoadModule rewrite_module modules/mod_rewrite.so

AddModule mod_rewrite.c


步驟 3 : 用 apache mod_rewrite module (只適用 1.2+版以上 ). 用這個,你可以即時的 rewite requested URL(當(dāng)條件符合時). 需要把這片斷碼放在網(wǎng)頁的底部.

 

RewriteEngine On

# Catch most WAP browsers

RewriteCond %{HTTP_ACCEPT} text/vnd\.wap\.wml [OR]

# WinWAP, WAPjag

RewriteCond %{HTTP_USER_AGENT} wap [OR]

#Nokia emulators (sdk)

RewriteCond %{HTTP_USER_AGENT} 7110

# Rewrite to where your wireless page is located

RewriteRule ^[\./](.*)$ /home/mydirectory/wireless/home.wml [L]


現(xiàn)在要重新啟動 apache server.

 

產(chǎn)生你第一個無線 WML/PHP 網(wǎng)頁
Ok, 既然我們?nèi)f事俱備, 讓我們建立第一個網(wǎng)頁。為了能正常運作,你需傳送正確的 header 資訊.
<?php

# Send the header information<br>
header("Content-type: text/vnd.wap.wml");

?>

# put in the wml code
<wml>

<card id='home'>

<p>

My first test page

<p>
</card>
</wml>

你剛完成了你的第一個“簡單”的無線網(wǎng)頁,F(xiàn)在, 讓我們試著更努力做一些較難的東西吧。  

你需要檢查你 WAP 兼容的網(wǎng)站設(shè)備。我使用 Phone.com 軟件開發(fā)工具包, 它包含 UP.Simulator , 可以檢查我的無線網(wǎng)頁。選擇不同的電話并且看他們的無線網(wǎng)頁通過不同的設(shè)備時看起來的長像。


更多的資訊在:

http://updev.phone.com
http://www.wapforum.org
http://www.wap.com
http://www.waplinks.com


標(biāo)簽:WML Apache 與 PHP 的介紹