Home > Article > Backend Development > Introduction to WML, Apache, and PHP
In the company's website, I found that I needed a wireless website that could receive my emails, stock market information, etc. I didn't want to pay people to get the information I wanted, so I decided to develop a wireless website. Such information is on the Internet. It's okay, but it's so scattered that it's difficult to collect. I need to be able to execute php, access the database, and I need PHP to do other functions for me. This article covers the basics of wml, how to set up your apache server and php. These basics allow you to set up the environment and learn the future applications yourself. My first test page
Demand
You need to have some experience with Apache Web Server, Php and HTML. As for the system requirements, I used apache 1.3.9, php3, and Red Hat linux 6.0 to demonstrate. I have not encountered running Apache on windows, and Any issues on PHP3 or PHP4.
In this article, I will guide you in the areas of: introduction to wml, setting up wireless applications on Apache, and building your first WML/PHP web page. Most of the information can be gathered from the Internet.
Introduction to WML
WML stands for Wireless Markup Language. WAP phones or similar devices are used to write web pages in WML. WML is based on its xml-like syntax and scriptness. Anyone who has used HTML will have no problem learning WML. Many tags and attributes are the same, and there are not many tags. WML allows developers to develop dynamic content, although for this article we will use PHP as the dynamic language.
WML Basics
In WML you can use many subpages (called "cards'') in a WML page (called a "deck"). Each WML card acts like content to be displayed in the web page. The following will be the content of our .wml page Example. On my Server, I have this file stored in ~/wireless/home.wml
Unlike HTML, if you do not colse tags, such as
Configure Apache
Ok, now the fun part. In order for apache to catch wireless devices accessing your server, you need to create your httpd.conf (mine is located in /etc/httpd/conf/) file, I use PHP3 hence all the changes will be recorded. Before you start, you can backup your httpd.conf file, just in case :)
Step 1: First, we need the AddType function to add a new MIME type. You need to go into the Script where you define php. It looks like below:
AddType application/x-httpd-php3 .php3 .php .phtml
AddType application/x-httpd-php3-source .phps
To be changed to:
AddType application/x-httpd-php3 .php3 .php .phtml .wml
AddType application/x-httpd-php3-source .phps
This will use the PHP compiler on all .wml pages.
Step 2: Remove Mark(Uncomment)apache Load Module and Add Module
Change:
#LoadModule rewrite_module modules/mod_rewrite.so
#AddModule mod_rewrite.c
into:
LoadModule rewrite_module modules/mod_rewrite.so
AddModule mod_rewrite.c
Step 3: Use apache mod_rewrite module (only applicable to version 1.2+ and above). With this, you can instantly rewite the requested URL (when the conditions are met). You need to put this snippet at the bottom of the web page.
RewriteEngineOn
# 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]
Now it’s time to restart apache server.
Generate your first wireless WML/PHP web page
Ok, now that we have everything ready, let's create our first web page. For this to work properly, you need to send the correct header information.
# Send the header information
header("Content-type: text/vnd.wap.wml");
?>
# put in the wml code
My first test page
You've just completed your first "simple" wireless web page. Now, let's try harder and do something harder.
You need to check your WAP compatible website equipment. I use the Phone.com Software Development Kit, which includes UP.Simulator, to inspect my wireless web pages. Select a different phone and see what their wireless pages look like when viewed through different devices.
The above is an introduction to WML, Apache, and PHP, including Apache content. I hope it will be helpful to friends who are interested in PHP tutorials.