Skip to content

A WordPress LAMP?! An Introduction to WordPress Infrastructure

This article introduces one of the most foundation topics in WordPress development: the server-side software that makes WordPress work. Often referred to as “the stack,” as this article explains the “LAMP stack” that most WordPress sites run on is just an initalism of the software packages of Linux, Apache, MySQL, and PHP. And that stack is just as useful today as it was 15 years ago when WordPress started.

This content is great, because it’s not just one of our normal articles: It’s a sample chapter from our “learn WordPress development” guide Up and Running. It’s truly a great way to get started on WordPress development.

If you like this chapter, check out Up and Running. There’s about 40 more chapters where this one came from.

The Best Way to Learn WordPress Development

Get Up and Running Today!

Up and Running is our complete "learn WordPress development" course. Now in its updated and expanded Third Edition, it's helped hundreds of happy buyers learn WordPress development the fast, smart, and thorough way.

Here's what one of them had to say:

"I think anyone interested in learning WordPress development NEEDS this course. Watching the videos was like a bunch of lights being turned on." -Jason, WordPress developer

Key Takeaways:

  • WordPress sites’ most common software infrastructure is called the LAMP stack: Linux, Apache, MySQL, and PHP.
  • Linux is the operating system on which most web servers (the computers that store websites) run. However, servers can run on other operating systems, such as Windows or Mac OS, making “WAMP” and “MAMP” common configurations for people who create servers on their own computers to do local development.
  • Apache is the most common HTTP web server software. Server software allows servers to process and respond to requests for information (“HTTP requests”) sent by remote computers, making the interactivity of the internet possible. Nginx is an increasingly popular alternative to Apache.
  • MySQL refers to the structure of WordPress databases. Every WordPress site has a database, which stores and communicates crucial things like post and page contents, site settings, and users and user permissions.
  • PHP is the main language in which WordPress itself, as well as WordPress themes and plugins, are written. PHP is a server-side language, interpreted by web servers; in a WordPress site, most PHP goes through extensive processing in order to generate a given page’s HTML content, which the server then delivers to the user’s browser for rendering.

Here, we’ll look at how WordPress actually presents pages to the Internet. Our goal is to get a basic understanding of the infrastructure that underlies your WordPress site.

What is the LAMP Stack?

LAMP is an initialism that stands for: Linux, Apache, MySQL, and (in this case) PHP. Let’s explain each of those individually. We’ll go in reverse order, since it’s actually easier to understand that way.

Using PHP as a Part of the LAMP Stack

PHP is necessary for WordPress. The computer that’ll host your WordPress site simply has to be able to parse and execute PHP code. If it can’t, you don’t get to run WordPress.

PHP isn’t the only P-language that can be used in a LAMP stack. Initially (in the 1990s, when this whole thing was new) it commonly stood for Perl, and also sometimes for Python. For our purposes, though, the “P” means a server that runs PHP—the main language of WordPress themes, plugins, and WordPress itself.

MySQL as Your Database

WordPress needs a place to store data. For this it uses a relational database management system (RDBMS) solution called MySQL.

MySQL was the first, and is still the most popular, free software RDBMS solution. It remains the go-to for many types of applications, for both practical and historical reasons.

When you create a new post in WordPress, it goes into the database. When you save a new option in your site (for example, the email address that site updates should be sent to), that goes into the database, and so on. The database in all these cases is a MySQL database.

Apache: Taking Care of Web Stuff

Apache is HTTP web server software. To oversimplify its job: Apache receives requests from other computers—sent using the standardized “handshake” that is HyperText Transfer Protocol (HTTP)—and delivers back HTTP responses of its own. When you enter a URL into your browser, server software is what interprets that request, and hunts for and gives you back the right resource.

For a long long time, Apache was the only web server software that anyone used or cared about. That’s changed in the last few years, but it’s still the biggest, and it’s what your WordPress site is likely being served with. (Nginx is the Apache-alternative most clearly growing in popularity. So some people are proud to run their sites on a “LEMP” (the phantom “E” on “(E)ngine-X” being used to make the word pronounceable) stack.

By far the most common way a WordPress developer will interact directly with Apache is through an Apache-only file called .htaccess, which can be used, for example, to redirect one URL on your site to another. Other than that, Apache is “in the background” for most WordPress programming tasks. If Nginx is used, .htaccess files will have no effect. But other than that, the rest of WordPress stack will be the same.

Linux: The Operating System under Everything

Linux is an operating system, like Apple’s Mac OS or Microsoft’s Windows. Linux is the most popular Unix-like operating system, and it’s the most common operating system on servers because of its free licensing.

The specifics of what “Unix-like” means, what an operating system is, and so forth aren’t that important. What you actually need to know is simply that the other three pieces of the stack—your (Apache) web server, your (MySQL) database, and your programming language (PHP)—ride atop the operating system. And if those three work, WordPress works.

By the way, Linux is the most commonly substituted piece of the WordPress LAMP stack: If you’ve ever heard people mention developing WordPress sites locally (on their own computers) using “WAMP” or “MAMP,” that’s how: Windows and Mac OS work fine as server operating systems. Assuming everything else is in order, you can run WordPress on a server with any OS, and that’s what people who create private servers on their own Macs or PCs are doing.

What It All Means

For most WordPress development uses, every piece of the LAMP stack except PHP runs unobtrusively in the background. Still, it’s very good to know a bit about the technologies that underlie and power WordPress. We hope this quick tour gives you the basis you need to learn and explore more.

Summary Limerick

Linux, Apache, MySQL,
And PHP may have no equal.
Call them “LAMP” and you
Find folks understand you.
(At least, just about any geek will.)

Quiz Time!

  1. Apache is:
    1. An operating system
    2. A server-side programming language
    3. Web server software
  2. Which of the following is most commonly substituted in the WordPress LAMP stack:
    1. Linux
    2. MySQL
    3. PHP
  3. In WordPress, which of these things is stored in a MySQL database:
    1. Theme files
    2. Post content
    3. CSS stylesheets

Answers and Explanations

  1. C. Apache is server software: it runs on an operating system (like Linux) and provides the software infastructure for server-side programming languages (like PHP).
  2. A. Linux, an operating system, isn’t as essential to WordPress as PHP or MySQL are.
  3. B. The post content that WordPress manages lives in the database. Files, such as theme files or CSS stylesheets, do not.
David Hayes

1 Comment
Most Voted
Newest Oldest
Inline Feedbacks
View all comments
October 19, 2020 3:18 am

Let me have a simple summary of this topic.

Apache is a software runing at the service-side, and they can power the entire information sent to the user-side front-end.

MySQL is a database, that is the WordPress refer database online.

Linux is the operating system.

PHP is the language that is the offical language for programming with wordpress.

Or start the conversation in our Facebook group for WordPress professionals. Find answers, share tips, and get help from other WordPress experts. Join now (it’s free)!

Most Searched Articles

Best JavaScript Libraries and Frameworks: Try These 14 in 2024

In this post, we look at the best JavaScript libraries and frameworks to try out this year. Why? Well, with JavaScript being available in every web browser, this makes it the most accessible programming language of ...

25 Best Free WordPress Themes (Responsive, Mobile-Ready, Beautiful)

If you're looking for only the best free WordPress themes in the market for this year, then you're in the right place. We have more than enough such themes for you right ...

12 Best WordPress Hosting Providers of 2024 Compared and Tested

Looking for the best WordPress hosting that you can actually afford? We did the testing for you. Here are 10+ best hosts on the market ...

Handpicked Articles

How to Make a WordPress Website: Ultimate Guide for All Users – Beginners, Intermediate, Advanced

Many people wonder how to make a WordPress website. They’ve heard about WordPress, its incredible popularity, excellent features and designs, and now they want to join the pack and build a WordPress website of their own. So, where does one get ...

How to Start an Ecommerce Business: Ultimate Guide for 2024

Is this going to be the year you learn how to start an eCommerce business from scratch? You’re certainly in the right place! This guide will give you a roadmap to getting from 0 to a fully functional eCommerce business. ...