0845 450 6120

Developing and delivering dynamic web sites using Linux, Apache, MySQL and PHP

The 'LAMP' stack of open-source technologies (Linux, Apache, MySQL and PHP) provides an excellent platform for web content delivery. Based around a realistic case study, this 5-day hands-on course provides a comprehensive introduction to the use of LAMP to build a dynamic, commercial web site.

The courses uses a RedHat-based Linux system as a basis for hands-on exercises but is not closely tied to a specific linux distribution.

Reset

Learning Objectives

At the end of this course you will be able to:

  • Install and configure Linux, Apache, MySQL and PHP onto a bare machine
  • Configure apache to support virtual hosting, authenticated login, and SSL
  • Design, create and populate a relational database using MySQL
  • Design and run database queries and updates using SQL
  • Keep web servers and web applications secure
  • Create web pages and web forms using HTML and CSS
  • Use PHP for server-side processing and database access within a web application

Pre-Requisites

  • Delegates should have basic Linux command-line competence including knowledge of file system commands, users and groups, and file permissions
  • Prior exposure to some of the relevant technologies (Databases, SQL, HTML, and a programming language) would be advantageous but is not essential. No prior specific knowledge of Apache, MySQL or PHP is assumed

Course Content

Setting the scene

  • The architecture of web applications
  • The case study

Installing Linux

  • Installation Methods
  • Partitioning
  • Account creation
  • Other configuration choices

Survival Linux

  • Key command line tools
  • File system management commands
  • File permissions
  • System activity reporting tools
  • File system tour: what lives where

Installing and configuring Apache

  • Installation
  • Basic configuration
  • Virtual Hosting
  • Access control
  • Creating secure connections with SSL

An HTML Primer

  • Basic tags and attributes
  • Tables
  • Forms
  • Cascading style sheets

PHP core language

  • Creating a stand-alone script
  • Data types and variables
  • Arithmetic operators
  • Relational operators
  • Flow control

PHP advanced features

  • Functions
  • Arrays
  • String manipulation
  • Object-oriented programming

Processing web forms with PHP

  • Embedding PHP into a web page
  • Accessing form data from PHP
  • Maintaining state in web applications

Database Fundamentals

  • Tables, columns and keys
  • Data types
  • Data relations
  • Designing our database

Structured Query Language

  • Creating tables
  • Inserting data
  • Querying the database
  • Deleting data

Installing and configuring MySQL

  • Installation
  • Administration using mysql command line tool
  • MySQL Workbench
  • Granting rights to users
  • Creating, populating and querying tables

Accessing a database using PHP

  • Connecting to the database
  • Building and executing a query
  • Accessing the results of a query
  • Putting it altogether

Staying safe

  • Applying the principal of least privilege
  • Hardening linux
  • Protecting the database
  • Authentication and authorisation in web applicactions
  • Validating user input
One Month
Two Months
Three Months
More than Three Months
PRINCE2 Foundation & Practitioner
MSP Foundation & Practitioner
APMP Certificate
ITIL Foundation
Scrum in One Day
Certified ScrumMaster
ISTQB Software Test Foundation
Microsoft Project
BCS Business Analysis Practice
Other - Please Specify Below

Our Customers Include