LAMP環境とはPHP言語を使ったWebアプリケーションの稼働環境です。それぞれの主要な構成要素の頭文字をから名づけられています。
- Linux・・・OS
- Apache・・・Webサーバ
- MySQL・・・データベースサーバ
- PHP・・・サーバサイドのプログラミング言語
LAMP環境では、Linux OSの上でApache Webサーバ立ち上げ、PHPのプログラムを実行してMySQLからデータを取得して、ブラウザに表示するデータをWebサーバを通してブラウザに渡す、といった一連の処理を行います。
特徴
LAMP環境の大きな特徴は、すべてオープンソースなので無償で環境作成をすることができてコスト面で有利という点が挙げられます。また、長年使用されてきたためシステム構成として信頼できる実績があるという点です。そして、構成自体は比較的シンプルなので学習コストは低めです。コンポーネントが独立しているため、別のものに入れ替えることも可能です。例えばApacheの代わりにNginxにしたり、MySQLの代わりにMariaDBを使用したりできます。
Linux
本記事ではLinuxをAWSのEC2インスタンスとして話をしていきます。同じEC2インスタンス上にApache、PHP、MySQL(MariaDB)の3つをインストールすればシングルサーバでLAMP環境になります。データベースだけ別サーバに移してウェブサーバと分けて管理することもできます。個別のデータベースサーバを立てずに、RDSなどのデータベースサービスを使うこともできます。
Amazon LinuxのEC2インスタンスを作成するには以下の記事を参考にして下さい。

ApacheとPHP
PHPは元々Apacheのモジュールとして組み込まれていて、ApacheとPHPは親和性の高いものでしたが、パフォーマンスの限界と共に、PHPはApacheのプロセスではなく、独立したプロセス(php-fpm)に分離されることになりました。現在はNginx Webサーバも普及しており、Nginxもphp-fpmを用いてPHPを実行できる状態にあります。
PHPのインストール方法については以下の記事を参考にしてください。

Apacheのインストール方法についてはこちらの記事を参考にして下さい。

または、Nginxのインストール方法についてはこちらの記事を参考にしてください。

MySQLとPHP
サーバサイド言語のPHPからMySQLデータベースにアクセスしてデータの取得や更新を行いますが、データベースには様々な選択肢があります。MySQLに代表されるリレーショナルデータベースにはMySQLの他にもPostgreSQLやOracleといったものがあります。勿論PHPからもこれらのデータベースにアクセスすることは可能です。更に、Neo4jなどのグラフデータベースや、サーチエンジンデータベースのElasticSearchやSolrといったデータベースにも接続できます。
MariaDBのインストールについてはこちらを参考にしてください。

Neo4jのインストールについてはこちらを参考にしてください。

まとめ
LAMPはLinux、Apache、MySQL、PHPの頭文字をとったWebアプリの実行環境でしたね。長年の実績があり、オープンソースなので無料で作成できるのが特徴でした。それぞれのコンポーネントのインストール方法を再確認しておきましょう。