Linux for PHP Developers
4h 39mBeginner2017-07-05
Authors

Jon Peck
Software Architect, Engineer, Consultant, Trainer
Course details
Set yourself up for PHP programming in Linux—the fast, powerful, and free development environment that can be virtualized on almost any machine, including Mac and Windows computers. Explore various Linux distributions and the LAMP stack: the most ubiquitous web server solution on the Internet. Begin by downloading Linux, installing the operating system, and then configuring each additional stack element: Apache, MySQL, and PHP. Instructor Jon Peck describes how the LAMP components work together to support and network your web applications. You'll also learn how to manage Linux from the command line, optimize your system's performance for virtualization, and troubleshoot common installation and configuration issues. Plus, install some of the top PHP tools and frameworks, including Composer, Symfony, and Laravel.
Note: The demonstrations use the Ubuntu distribution of Linux, but the skills are applicable to other Linux distributions.
Note: The demonstrations use the Ubuntu distribution of Linux, but the skills are applicable to other Linux distributions.
Skills covered
LAMPMySQLPHPApacheLinuxNetwork AdministrationProgramming LanguagesNetwork and System AdministrationOpen SourceSoftware Development
Concepts
0. Introduction
- 01 - Welcome to Linux for PHP Developers
- 02 - What you should know
- 03 - Software prerequisites
- 04 - Exercise files for this course
1. Getting Started
- 05 - Networking fundamentals
- 06 - The lifecycle of a request
- 07 - Where should I be developing
- 08 - Where should I put a dev server
- 09 - What is Linux and why should I use it
- 10 - Choosing a Linux distribution
- 11 - Introducing virtualization
- 12 - What's a LAMP and why does it matter
2. Creating a Virtual Machine
- 13 - Preparing your workstation
- 14 - Creating the virtual machine
- 15 - Optimize the VM configuration
- 16 - Installing Ubuntu Server 16.04 LTS
3. Managing the Server from the Command Line
- 17 - Talk to yourself with local networking
- 18 - Logging in using Secure Shell
- 19 - Using SSH on a Mac
- 20 - Using SSH on Windows
- 21 - Navigating a command-line shell
- 22 - Reading and searching files
- 23 - Administration commands with sudo
4. Initial Server Configuration
- 24 - Upgrading and installing packages
- 25 - Installing VirtualBox Guest Additions
- 26 - Configuring group permissions for access
- 27 - Configuring Apache HTTP Server
- 28 - Managing Apache sites and modules
- 29 - Configuring PHP for development
- 30 - Installing MailCatcher for dev email
5. MySQL Database Administration
- 31 - Configuring the MySQL database server
- 32 - Introduction to MySQL access privileges
- 33 - Managing databases with MySQL Workbench
- 34 - Creating MySQL databases and users
6. Debugging and Performance
- 35 - Installing Xdebug for debugging
- 36 - Installing webgrind for profiling
- 37 - Installing Memcached memory caching
- 38 - Installing Redis in-memory database
7. Installing PHP Applications and Frameworks
- 39 - Best practices for managing PHP projects
- 40 - Installing Composer dependency manager
- 41 - Installing WordPress and WP-CLI
- 42 - Installing Drupal, Drush, and Console
- 43 - Installing Symfony
- 44 - Installing CodeIgniter
- 45 - Installing Laravel and Artisan
8. Advanced VirtualBox Techniques
- 46 - Turning back time with VM snapshots
- 47 - Exporting VMs for reuse
- 48 - VirtualBox from the command line
9. Troubleshooting a LAMP Server
- 49 - Troubleshooting SSH
- 50 - Troubleshooting Apache
- 51 - Troubleshooting MySQL
- 52 - Troubleshooting PHP
Conclusion
- 53 - Keeping the server up to date
- 54 - Automating configuration With Vagrant
- 55 - Where to go from here
Related courses
- Installing Apache, MySQL, and PHP
- Practical Linux for Network Engineers: Part 1
- Practical Linux for Network Engineers: Part 2
- Kali Linux for Advanced Pen Testing and Ethical Hacking
- Strategic Linux for Network Professionals: Security, Monitoring, and Automation
- Linux Tips
- Introduction to Kali Linux for Penetration Testing and Ethical Hacking
- Introduction to Linux
Related learn paths
- Become a Penetration Tester
- Getting Started with R for Data Science
- Ubuntu Linux Professional Certificate
- Prepare for the Linux Professional Institute LPIC-2 (201-450) Exam
- Prepare for the Linux Professional Institute LPIC-2 (202-450) Certification Exam
- Prepare for the Linux Foundation Certified System Administrator (LFCS) Exam
- Prepare for the Linux Professional Institute LPIC-1 (101-500 and 102-500) Exams
- Getting Started with Linux