Web-Site Technical Information
After a number of incarnations based on PC hardware (configured to run Linux server software), all of which eventually gave up due to failing hardware, the web-site is now hosted on a Raspberry Pi (see also https://www.raspberrypi.org/) the credit-card sized microcomputer. Thus the hardware costs somewhere in the region of £30.00 depending on the specific Raspberry Pi model used.
In fact a number of Raspberry Pi devices are used, each configured to host an Apache web-server, and these are run in a warm stand-by configuration:
- primary: Raspberry Pi Model 2 (Quad-core CPU, 1Gb RAM, external 128Gb SSD to store web-site), PIco UPS battery backup, 100Mbps Ethernet LAN
- secondary: Raspberry Pi Model 2 (Quad-core CPU, 1Gb RAM, 64Gb micro-SD card to store bulk of the web-site), 100Mbps Ethernet LAN
- fallback: Raspberry Pi Model B (Single core CPU, 512Mb RAM, external USB 200 Gb HDD to store web-site), Pi UPS battery backup, 100Mbps Ethernet LAN
As the above information indicates the server can comfortably run on a single 64Gb micro-SD card (storing all the operational software plus the web-site data).
The photos below show the main items.
The web-site is running on a Linux server running LAMP. LAMP is a model of web service solution stacks, named as an acronym of the names of its original four open-source components:
- Linux operating system
- Apache HTTP Server
- MySQLrelational database management system (RDBMS)
- PHPscripting language
The information about service men, operations, aircraft, etc, is stored as data that is held in a MySQL database. The web-pages used to display this information are written as PHP pages which generate the reports at run-time, so that the data displayed is always the most up-to-date. There is some use of bash shell scripts. A variety of cron jobs are used to maintain the system. The database, report scripts and shells scripts are all written locally and the copyright is retained by the Squadron Association.
It should be noted that the web-pages have been defined/implemented principally for viewing on PC (laptop or desktop) on web browsers, and have not been adapted for viewing on mobile devices (smart-phones, tablets). Re-engineering pages for better viewing on mobile devices remains a future aspiration.
All of the web-site pages, documents and data are maintained in a Subversion version control system. Apache Subversion (SVN) is a software versioning and revision control system distributed as free software.
The Subversion repository is stored on the Network Attached Storage (NAS) device described in the hardware section above.
Internet connectivity is provided by a FTTC 12 Mb upload (40 Mb download) broadband link. A 4G USB WiFi dongle provides secondary backup in the event that the main internet connection goes down.
The following is a summary of the initial effort and resources (historical information) expended in putting the 550 Squadron and RAF North Killingholme Association web-site on-line:
- Time it took to register domain name: 2mins
- Cost of registering domain name: £2.99 / year (min 2 years)
- Cost of mailboxes for domain name: £0.69 / month (12 months)
- Toal cost of registering: £15.10 (inc. of VAT and discounts)
- Time it took for domain name to become live (i.e. be fully registered on Domain Name Servers, a one-off activity):
- ca. 3hrs (theoretical maximum, usually less)
- thereafter live and accessible from anywhere on the Internet
- Time to construct and test this particular web-page (on local network):
- configure web-server to serve up pages for this domain name (one-off activity on an exising web-server): 10mins
- generate and test web-page (inc. scanning documents and creating screen images): 15-20mins
- Time to do initial check that web-pages are accessible from the Internet: the time it took for domain name to become live on DNS
- Constructing data entry forms and back-end database access routines, etc, took a little longer!
- Location of server:
- somewhere in South-East England
There is obviously an on-going activity to maintain the system in addition to activities around increasing the information in the database of squadron information.