0345 4506120

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

Privacy Notice

In order to provide you with the service requested we will need to retain and use your contact information in accordance with our Privacy Notice. If you choose to provide us with this information you explicitly consent to us using the information as necessary to provide the request service to you. If you do not agree please do not proceed to request the service from us.

Marketing Permissions

Would you like to receive our newsletter and other information on products and services which we think will be of interest to you by email. We will always treat your information with care and in accordance with our Privacy Notice. You are free to withdraw this permission at any time.

 

Our Customers Include