LAMP Apache、MySQL、PHP を Ubuntu 22.04 にインストールする方法。このガイドでは、Apache2、MySQL、および PHP 8.1 をインストールする方法を学習します。
また、いくつかの一般的な PHP 拡張機能をインストールし、PHP 構成を調整します。 PhpMyAdmin をインストールすると、最後に Let’s Encrypt SSL でセットアップを保護し、HTTPS リダイレクトを構成します。
この設定は Google クラウドでテストされているため、AWS、Azure、VPS、Ubuntu 22.04 を実行する専用サーバーなど、すべてのクラウド ホスティング サービスで動作します。
前提条件
- サーバーまたは sudo ユーザーへの root アクセス
ステップ 1:セットアップの初期化
次のコマンドを使用して、利用可能な最新バージョンにパッケージを更新することから始めます。
sudo apt update sudo apt upgrade
セットアップを更新したら、セットアップを開始できます。
ステップ 2:Apache をインストールする
次のコマンドを使用して Apache をインストールします。
sudo apt install apache2
apache2 がインストールされます および必要なすべての依存関係。
ステップ 3:ファイアウォールをセットアップする
HTTP のデフォルト Web ポートでのパブリック アクセスを許可するために、Apache で複雑でないファイアウォール (UFW) をセットアップできるようになりました。 そして HTTPS
sudo ufw app list
リストされたすべてのアプリケーションが表示されます。
Output
Available applications:
Apache
Apache Full
Apache Secure
OpenSSH
- アパッチ :このプロファイルはポート
80を開きます (通常の暗号化されていない Web トラフィック) - Apache フル :このプロファイルは両方のポート
80を開きます (通常の暗号化されていない Web トラフィック) およびポート443(TLS/SSL 暗号化トラフィック) - Apache セキュア :このプロファイルはポート
443のみを開きます (TLS/SSL 暗号化トラフィック) - OpenSSH :このプロファイルはポート
22を開きます SSH アクセス用
SSL を使用しない場合は、Apache プロファイルのみを有効にする必要があります。
次に、Apache Full を有効にします。
sudo ufw allow OpenSSH sudo ufw allow 'Apache Full'
sudo ufw enable
このコマンドを使用すると、UFW のステータスを表示できます。
sudo ufw status
次のような出力が表示されます。
Output
Status: active
To Action From
-- ------ ----
Apache Full ALLOW Anywhere
OpenSSH ALLOW Anywhere
Apache Full (v6) ALLOW Anywhere (v6)
OpenSSH (v6) ALLOW Anywhere (v6)
ステップ:4 Apache のインストールを確認する
ステップ 2 で Apache をインストールしたので、Apache は自動的に開始され、すでに稼働しているはずです。
以下のコマンドを使用して Apache のバージョンを確認してください
sudo apachectl -v
Output Server version: Apache/2.4.52 (Ubuntu) Server built: 2022-03-25T00:35:40
Apache のすべてのプロセスは systemctl で管理されます 指図。次のコマンドで Apache のステータスを確認してください。
sudo systemctl status apache2
Output
● apache2.service - The Apache HTTP Server
Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
Active: active (running) since Fri 2022-04-29 00:34:49 UTC; 2min 52s ago
Docs: https://httpd.apache.org/docs/2.4/
Main PID: 12782 (apache2)
Tasks: 55 (limit: 1151)
Memory: 5.1M
CPU: 52ms
CGroup: /system.slice/apache2.service
├─12782 /usr/sbin/apache2 -k start
├─12784 /usr/sbin/apache2 -k start
└─12785 /usr/sbin/apache2 -k start これで、Apache がインストールされ、ファイアウォールが構成されました。
ステップ 5:MySQL をインストールする
Ubuntu 22.04 では、デフォルトで MySQL 8 が Jammy Jellyfish リポジトリに含まれているため、apt install を使用して簡単にインストールできます。 コマンド。
sudo apt install mysql-server
インストールが完了すると、MySQL サービスが自動的に開始されます。 MySQL サーバーが実行されていることを確認するには、次のように入力します。
sudo service mysql status
出力は、サービスが有効で実行中であることを示しているはずです:
● mysql.service - MySQL Community Server
Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
Active: active (running) since Fri 2022-04-29 00:38:45 UTC; 11s ago
Process: 13836 ExecStartPre=/usr/share/mysql/mysql-systemd-start pre (code=exited, statu>
Main PID: 13844 (mysqld)
Status: "Server is operational"
Tasks: 38 (limit: 1151)
Memory: 351.4M
CPU: 1.043s
CGroup: /system.slice/mysql.service
└─13844 /usr/sbin/mysqld 以下のコマンドを使用して、MySQL のバージョンを確認してください。
sudo mysql -V
Output mysql Ver 8.0.28-0ubuntu4 for Linux on x86_64 ((Ubuntu))
ステップ 6:MySQL を保護する
MySQL のインストールには mysql_secure_installation という名前のスクリプトが付属しています これにより、MySQL サーバーのセキュリティを簡単に改善できます。
sudo mysql_secure_installation
VALIDATE PASSWORD PLUGIN を設定するように求められます これは、MySQL ユーザー パスワードの強度をテストし、セキュリティを向上させるために使用されます。
yを押してください パスワード検証プラグインまたはその他のキーを設定して次のステップに進む場合。
パスワード検証ポリシーには、低、中、強の 3 つのレベルがあります。
強力なパスワード検証のために 2 を入力してください。
次のプロンプトで、MySQL root ユーザーのパスワードを設定するよう求められます。
Validate Password プラグインをセットアップすると、スクリプトは新しいパスワードの強度を表示します。 y と入力します パスワードを確認します。
次に、匿名ユーザーを削除し、ローカル マシンへのルート ユーザー アクセスを制限し、テスト データベースを削除し、特権テーブルをリロードするよう求められます。 y と答える必要があります すべての質問に。
ステップ 7:PHP をインストールする
デフォルトでは、Ubuntu 22.04 には最新の PHP 8.1 リポジトリが追加されています。したがって、次のコマンドを使用して PHP をインストールできます。
sudo apt install php8.1-fpm php8.1 libapache2-mod-php8.1 php8.1-common php8.1-mysql php8.1-xml php8.1-xmlrpc php8.1-curl php8.1-gd php8.1-imagick php8.1-cli php8.1-imap php8.1-mbstring php8.1-opcache php8.1-soap php8.1-zip php8.1-intl php8.1-bcmath unzip -y
PHP をインストールしたら、次のコマンドを使用してバージョンを確認できます。
php -v
Output
PHP 8.1.5 (cli) (built: Apr 7 2022 17:46:26) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.1.5, Copyright (c) Zend Technologies
with Zend OPcache v8.1.5, Copyright (c), by Zend Technologies ステップ 8:PHP を構成する
php.ini のいくつかの値を変更して、Web アプリケーション用の PHP を構成します。 ファイル。
Apache を使用する PHP 7.4 の場合、php.ini 場所は次のディレクトリになります。
sudo nano /etc/php/8.1/apache2/php.ini
F6 をヒット エディター内で検索し、パフォーマンスを向上させるために次の値を更新します。
upload_max_filesize = 32M
post_max_size = 48M
memory_limit = 256M
max_execution_time = 600
max_input_vars = 3000
max_input_time = 1000
PHP 設定を変更したら、変更を有効にするために Apache を再起動する必要があります。
情報技術の専門家として働く役割に備える Linux オペレーティング システムで
ステップ 9:Apache を構成する
デフォルトの Apache 構成を無効にします。
sudo a2dissite 000-default
Web サイト ディレクトリを作成します。
sudo mkdir -p /var/www/html/domainname/public
正しい権限を設定してください。
sudo chmod -R 755 /var/www/html/domainname sudo chown -R www-data:www-data /var/www/html/domainname
新しい仮想ホスト構成を作成します。
sudo nano /etc/apache2/sites-available/domainname.conf
次の構成を新しいファイルに貼り付けます。
<VirtualHost *:80>
ServerAdmin [email protected]
ServerName domainname.com
ServerAlias www.domainname.com
DocumentRoot /var/www/html/domainname/public
<Directory /var/www/html/domainname/public>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost> 新しい構成を有効にします。
sudo a2ensite domainname.conf
ステップ 10:PhpMyAdmin をインストールする
PhpMyAdmin は、MySQL データベースを簡単に管理するためのツールです。以下のコマンドを使用してインストールできます。
sudo apt install phpmyadmin
Apache の PhpMyAdmin 構成をコピーします。
sudo cp /etc/phpmyadmin/apache.conf /etc/apache2/conf-available/phpmyadmin.conf
構成を有効にします。
sudo a2enconf phpmyadmin.conf
Apache を再起動します。
sudo service apache2 restart
これで、PhpMyAdmin がインストールされました。これは、このルート yourdomain.com/phpmyadmin でアクセスできます。 .
ステップ 11:Let’s Encrypt SSL をインストールする
HTTPS は、サーバー (インスタンス) とクライアント (Web ブラウザー) 間の安全な通信のためのプロトコルです。無料の SSL 証明書を提供する Let’s Encrypt の導入により、HTTPS はすべての人に採用され、視聴者にも信頼をもたらします。
sudo apt install python3-certbot-apache
これで、Ubuntu 22.04 用の Let’s Encrypt によって Certbot がインストールされました。このコマンドを実行して、証明書を受け取ります。
sudo certbot --apache --agree-tos --redirect -m [email protected] -d domainname.com -d www.domainname.com
このコマンドは、無料の SSL をインストールし、HTTPS へのリダイレクトを構成し、Apache サーバーを再起動します。
ステップ 12:SSL 証明書の更新
Let’s Encrypt が提供する証明書は 90 日間のみ有効であるため、頻繁に更新する必要があります。それでは、次のコマンドを使用して更新機能をテストしましょう。
sudo certbot renew --dry-run
このコマンドは、証明書の有効期限をテストし、自動更新機能を構成します。
ステップ:13:設定をテストする
適切な手順を実行したら、Web ディレクトリに新しいテスト PHP ファイルを作成できます。
sudo nano /var/www/html/domainname/public/info.php
以下のコードをファイル内に貼り付けます。
<?php phpinfo();
ファイルを保存します。
info.php でドメイン名を確認してください。 URL (domainname.com/info.php ).
ドメインが HTTPS にリダイレクトされ、PHP 情報の詳細が表示されます。
認定 AWS プロフェッショナルになる この簡単に学べるコースを今すぐ受講してください。
結論
これで、LAMP スタック Ubuntu 22.04 のインストール方法を学習しました。また、PhpMyAdmin をインストールして構成し、Let’s Encrypt SSL を使用してインストールを保護する方法も学びました。
御時間ありがとうございます。問題やフィードバックに直面した場合は、下にコメントを残してください。