サーバー設定 · 2 min read · Oct 12, 2025
Ubuntu 18.04にNginx、PHP、MySQL(LEMPスタック)をインストールする方法

Nginx(「エンジン x」と発音)は、無料でオープンソースの高性能HTTPサーバーです。Nginxは、その安定性、豊富な機能セット、シンプルな設定、低リソース消費で知られています。このチュートリアルでは、PHP 7.2サポート(PHP-FPMを通じて)とMySQLサポートを持つUbuntu 18.04 LTSサーバーにNginxをインストールする方法を示します(LEMP = Linux + nginx(「 e ngine x」と発音) + MySQL + PHP)。
前提条件
- Ubuntu 18.04 LTSサーバー
- ルート権限
何をするか?
- Nginxをインストール
- MySQLをインストール
- PHP-FPMをインストール
- NginxとPHP-FPMを設定
- PhpMyAdminをインストール
- PhpMyAdminを設定
- テスト
ステップ1 - Nginxをインストール
Nginxまたはエンジン xは、低メモリ消費の高性能HTTPおよびプロキシサーバーです。Netflix、Pinterest、CloudFlare、GitHubなどの大規模なウェブサイトのほとんどがNginxを使用しています。
このステップでは、UbuntuリポジトリからNginxウェブサーバーをインストールします。
以下のコマンドを実行します。
sudo apt install nginx -yインストールが完了したら、Nginxサービスを開始し、システム起動時に毎回起動するように設定します。
systemctl start nginx
systemctl enable nginxNginxのインストールが完了しました。
ファイアウォールの設定
サーバーでファイアウォールをオンにすることをお勧めします。
SSHおよびHTTPサービスポートをファイアウォール設定に追加します。
以下のUFWコマンドを実行します。
ufw allow ssh
ufw allow http次に、UFWファイアウォールを開始し、システム起動時に毎回起動するように設定します。
ufw enableNginxウェブサーバーはUFWファイアウォールの下で稼働しています。

ステップ2 - MySQLをインストール
MySQLは、Oracle Corporationによって作成された最も人気のあるオープンソースのリレーショナルデータベース管理システム(RDBMS)です。LEMPスタックの中心的なコンポーネントであり、Ubuntuリポジトリから最新のMySQLバージョンをインストールします。
以下のaptコマンドを使用してMySQLをインストールします。
sudo apt install mysql-server mysql-client -yMySQLのインストールが完了したら、MySQLサービスを開始し、システム起動時に毎回起動するように設定します。
systemctl start mysql
systemctl enable mysqlこれで、Ubuntu 18.04サーバーにMySQL 5.7がインストールされました。
ステップ3 - PHP-FPMをインストール
PHP-FPMまたはFastCGIプロセスマネージャーは、追加機能と速度向上を提供する古いPHP FastCGIの代替です。PHPプログラミング言語に基づく小規模から大規模なサイトに適しています。
このステップでは、phpmyadminに必要な追加拡張機能を含むPHP7.2-FPMをインストールします。
以下のコマンドを使用してPHP-FPMをインストールします。
sudo apt install php7.2 php7.2-fpm php7.2-cli php7.2-curl php7.2-mysql php7.2-curl php7.2-gd php7.2-mbstring php-pear -yすべてのインストールが完了したら、PHP-FPMサービスを開始し、システム起動時に毎回起動するように設定します。
systemctl start php7.2-fpm
systemctl enable php7.2-fpmPHP7.2-FPMは、sockファイルの下でUbuntu 18.04で稼働しています。netstatコマンドを使用して確認します。
netstat -pl | grep phpステップ4 - NginxとPHP-FPMを設定
このステップでは、NginxウェブサーバーとPHP-FPMを設定します。
Nginxの設定
‘/etc/nginx’設定ディレクトリに移動し、vimまたはnanoを使用して’nginx.conf’ファイルを編集します。
cd /etc/nginx/
vim nginx.conf以下の行のコメントを解除します。
keepalive_timeout 2;
server_tokens off;設定ファイルを保存してエディタを終了します。
次に、デフォルトのNginx仮想ホストファイルを編集します。
vim sites-available/default以下に示すPHP行のコメントを解除し、sockファイル行を変更します。
location ~ \.php$ {
include snippets/fastcgi-php.conf;
#
# # With php-fpm (or other unix sockets):
fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
# # With php-cgi (or other tcp sockets):
# fastcgi_pass 127.2.0.1:9000;
}保存して終了します。
Nginxの設定をテストし、エラーがないことを確認してから、サービスを再起動します。
nginx -t
systemctl reload nginx
PHP-FPMの設定
‘/etc/php/7.2’ディレクトリに移動し、’php.ini’ファイルを編集します。
cd /etc/php/7.2/
vim fpm/php.ini‘cgi.fix_pathinfo’行のコメントを解除し、値を’0’に変更します。
cgi.fix_pathinfo=0保存して終了します。
PHP-FPMサービスを再読み込みします。
systemctl reload php7.2-fpmこれで、NginxウェブサーバーとPHP-FPMの設定が完了しました。
ステップ5 - PhpMyAdminをインストール
PhpMyAdminは、ウェブブラウザからMySQLまたはMariaDBデータベースを管理するためのPHPベースのアプリケーションです。
このステップでは、LEMP(Linux、Nginx、MySQL、PHP-FPM)スタックの下でphpmyadminをインストールおよび設定します。
以下のaptコマンドを使用してPHPMyAdminをインストールします。
sudo apt install phpmyadmin -yインストール中に、phpmyadminのウェブサーバー設定について尋ねられます。
「none」オプションを選択し、カーソルを「OK」に移動します。
phpmyadminデータベース設定については、「Yes」を選択します。

新しい「強力な」phpmyadmin管理者パスワードを入力します(例:’Hakaselabs001@#’)。
‘Hakaselabs001@#’パスワードを繰り返します。

これで、phpmyadminのインストールが完了しました。
ステップ6 - PhpMyAdminを設定
phpmyadminのインストール後、Nginxウェブサーバーの下でphpmyadminを実行し、MySQLユーザーのphpmyadminアクセスを設定する必要があります。
NginxでのPhpMyAdminの設定
Nginxウェブサーバーの下でphpmyadminを実行するために、仮想ホスト設定ファイルに設定を追加する必要があります。
‘/etc/nginx’設定ディレクトリに移動し、デフォルトの仮想ホストファイルを編集します。
cd /etc/nginx/
vim sites-available/default以下のNginx設定を’server {…}’ブロック内に貼り付けます。
location /phpmyadmin {
root /usr/share/;
index index.php;
try_files $uri $uri/ =404;
location ~ ^/phpmyadmin/(doc|sql|setup)/ {
deny all;
}
location ~ /phpmyadmin/(.+\.php)$ {
fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
include snippets/fastcgi-php.conf;
}
}保存して終了します。
Nginxの設定をテストし、Nginxサービスを再起動します。
nginx -t
systemctl reload nginxこれで、phpmyadminのためのNginx設定が追加されました。
PhpMyAdminのためのMySQLユーザーの設定
このチュートリアルでは、phpmyadmin用に非ルートのMySQLユーザーを使用します。新しいユーザーを作成し、サーバー内のデータベースのすべての権限をそのユーザーに付与します。
MySQLシェルにログインします。
mysql -u root -p次に、以下のMySQLクエリを使用して新しいユーザーを作成します。
create user hakase@'localhost' identified by 'Hakaselabs001@#';
grant all privileges on *.* to hakase@'localhost' identified by 'Hakaselabs001@#';
flush privileges;
exit;これで、phpmyadminアクセス用の新しいユーザーが作成されました。

ステップ7 - テスト
PHPファイルのテスト
ウェブルートディレクトリ’/var/www/html’に移動し、新しいphpinfoファイルを作成します。
cd /var/www/html/
vim info.php以下のphpinfoスクリプトを貼り付けます。
保存して終了します。
次に、ウェブブラウザを開き、サーバーのIPアドレスを以下のように入力します。IPをサーバーのIPに置き換えます。
以下は、PHPサーバー設定に関するすべての情報です。

PhpMyAdminのログインテスト
ウェブブラウザに以下のphpmyadmin URLを入力します(IPをサーバーのIPに置き換えます)。
http://192.168.33.10/phpmyadmin/
phpmyadminのログインページで、ユーザー’hakase’とパスワード’Hakaselabs001@#’を入力し、’Go’ボタンをクリックします。

これで、以下のようにphpmyadminダッシュボードが表示されます。

LEMPスタックとPhpMyAdminがUbuntu 18.04 LTSに正常にインストールされました。
新しい投稿を受信箱で受け取る
スパムはありません。いつでも購読を解除できます。