PAMP:Installation
From OpenSource
NOTE If you have Raccoon or an old version of PAMP installed, please uninstall them before installing the new version. Be certain to save any important files you might have.
Contents |
[edit] Installation
Download pamp_1_0_0.zip from SourceForge.
The zip file contains:
- pips_s60_1_2_SS.sis
- openc_ssl.sis
- pamp_1_0_0.sis
NOTE The PAMP sis is a composite file containing many individual sis-files that all have been signed with a so called self-signed certificate. The implication is that you numerous times have to acknowledge that you really want to have the software installed.
NOTE The PAMP files are big and there are many of them. After the security warnings there will be a significant delay before the installation proceeds and the phone may appear frozen. Just wait; patience is a virtue.
PAMP can be installed as stand-alone or on top of MWS. In the former case it is, well, stand-alone, and in the latter case it replaces the Apache httpd web-server of MWS. However, in principle, replaces is the wrong word as httpd of MWS 1.3 is identical with httpd of PAMP; the only difference is that httpd of MWS has more capabilities and is signed with a proper certificate, while httpd of PAMP has only the capabilities that are available to a self-signed application and is signed with a self-signed certificate.
The implication of httpd of PAMP being signed with a self-signed certificate is that if PAMP is installed on top of MWS, certain features of MWS that depend upon more capabilities than what is available to a self-signed application, cease to function.
NOTE If you want to play with both PAMP and MWS separately, you need two devices. They cannot be installed independently on the same device.
NOTE The recommendation is to install PAMP on top of MWS.
[edit] Standalone PAMP
- Install pips_s60_1_2_SS.sis and openc_ssl.sis.
- Install pamp_1_0_0.sis.
The installation will create the following new directories:
- c:\data\apache - the ServerRoot of Apache httpd.
- c:\data\php - the location of PHP's ini file.
- c:\data\mysql - the location of MySQL's configuration file.
- c:\mysql - the location of MySQL databases.
- e:\data\apache\htdocs - the DocumentRoot of Apache httpd.
NOTE DocumentRoot is now always on E:, so you cannot install PAMP on a device that lacks a memory card. However, after the installation, DocumentRoot can be made to point elsewhere.
After the installation you will find two new applications on your phone; Pamp and Connector. The former is, well, PAMP, and the latter is a component that can provide your phone with a global URL (more about that later).
[edit] PAMP my MWS
- Start the Application Manager on your phone.
- Look for httpd-2.2.4 Server and uninstall it.
- Install pamp_1_0_0.sis
The installation will create the following directories:
- c:\data\apache - the ServerRoot of Apache httpd.
- c:\data\php - the location of PHP's ini file.
- c:\data\mysql - the location of MySQL's configuration file.
- c:\mysql - the location of MySQL databases.
The DocumentRoot will be c:\data\web server or e:\data\web server, depending on where MWS was installed.
After the installation you will find one new applications on your phone; Pamp.
[edit] Optional Files
- FExplorer
- You will want to be able to make minor modifications to httpd.conf and php-ini directly on the phone and for that you need a decent editor. FExplorer is a pretty nice editor for S60, so don't be put off by the bling-bling-ness of its website and the fact that you need to sign it yourself.
- PED
- Ped is another editor that actually is a Python programmer's editor. You need to have PyS60 installed.
- MySQL
- In order to be able to directly interact with the MySQL server running on the phone you need to install MySQL on your laptop. Download the right version for your OS from MySQL.
- NOTE Depending on the PHP packages you intend to install on top of PAMP, you may or may not actually need to do this. It won't harm though and is quite convenient.
[edit] Running
[edit] Smoketest 1
- Start Pamp
- Invoke [Options]->[Start]->[Pamp]
- Wait until both Apache and MySQL says Running
- Start the browser on the phone.
- Browse to http://127.0.0.1 (stand-alone) or http://127.0.0.1/php (MWS).
You should be greeted with a page that says It works!.
Next you can click on the link phpinfo.php to find out what PHP of PAMP has eaten. The other links refer to sites of different CMSs and are not served from your phone.
[edit] Smoketest 2
- Ensure that Pamp is running.
- Invoke [Options]->[Start WLAN] and select an approriate WLAN access point. Check here for more information about WLAN access points.
- Connect your laptop to the same WLAN.
- Type http://address (stand-alone) or http://address/php (MWS) in your browser, where address is the IP address shown on the Pamp screen. Note that if you have a firewall on your laptop you may have to explicitly enable that address.
You should be greeted with the same It works! as in the previous step.
[edit] Smoketest 3
- Ensure that Pamp is running.
- Invoke [Options]->[Start WLAN] and select an approriate WLAN access point.
- Connect your laptop to the same WLAN.
- Enter mysql -h address, where address is the IP address shown on the Pamp screen, in a command prompt on your PC. Note that if you have a firewall on your laptop you may have to explicitly enable that address.
You should be greeted with:
Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 1 Server version: 5.0.45 Source distribution Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql>
You are talking with MySQL running on your phone.
[edit] MWS Smoketest
- Ensure that PAMP is not running.
- Start MWS
- When MWS is running, start PAMP and invoke [Options]->[Start]->[MySQL].
- Do the browsing part of smoketests 1 and 2, but this time, use your MWS provided address.
If you just want to play with PAMP in a WLAN context, you can start PAMP directly via [Options]->[Start]->[Pamp] and then [Options]->[Start WLAN]. However, starting httpd via PAMP and then starting MWS causes a number of error messages to be shown.
Next you can continue with connectivity and PHP package issues.
