Ubuntu 18.04 に Apache、MySQL、PHP、LAMP をインストールするための完全なチュートリアル

Ubuntu 18.04 に Apache、MySQL、PHP、LAMP をインストールするための完全なチュートリアル

1. Apacheをインストールする

$ sudo apt update && sudo apt install apache2

途中で一時停止して続行するかどうかを尋ねられるので、 yと入力してEnter キーを押します

2. Apacheをテストする

Apache サービスのステータスを表示して、Apache が正しくインストールされているかどうかを確認します。

$ sudo サービス apache2 ステータス

ステータスを確認した後、q を押して Apache サーバーのステータスを終了する必要があります。
確認後、Apache サービスが稼働していることがわかったので、次のステップはいくつかの Apache Web ページを確認することです。
ブラウザのアドレスバーに IP アドレスを入力し、Enter キーを押すと表示されます。
IP アドレスがわからない場合は、次のコマンドを使用して確認できます。

$ sudo ifconfig | grep -Eo 'inet (addr:)?([0-9]*\.){3}[0-9]*' | grep -Eo '([0-9]*\.){3}[0-9]*' | grep -v '127.0.0.1' 

ブラウザで上記のページが表示されたら完了です。表示されているページがファイルです
このページは、
ページを変更する場合は、/var/www/html/index.html を変更するだけです。

3. MySQLをインストールする

$ sudo apt update && sudo apt install mysql-server 

続行するには、 yと入力して Enter キーを押します
インストールが完了したら、MySQL サービスが起動しているかどうかを確認します。

$ sudo サービス mysql ステータス

起動している場合は、アクティベーション ステータスが次のように表示されます。

サービスの状態を確認するには q を押す必要があるかもしれませんし、そうでないかもしれません。(ここでは必要ありません)

4. MySQLセキュリティを構成する

MySQLサーバの安全な設定のためには、 mysql_secure_installationを実行する必要があります。

$ sudo mysql_secure_installation

手順 1 で root ユーザーのパスワードを作成した場合、ここでパスワードを入力するように求められることがあります。それ以外の場合は、パスワードを作成するように求められます。
パスワード確認プラグインを設定するかどうかを尋ねられます。
厳格なパスワード ポリシーを適用する理由がない限り、これは必要ありません。

上の画像に移動し、パスワード確認プラグインを設定しない場合は、ここでEnter キーを押します。
Enter キーを押すと、次のようになります。

手順 1 で root ユーザーのパスワードを作成していない場合は、ここでパスワードを作成する必要があります。
Linux でパスワードを入力する場合、入力した内容は表示されないことに注意してください (アスタリスクやドットは表示されません)。

匿名ユーザーを削除するには、 yと入力してEnter キーを押します。

yと入力してEnter キーを押すと、root ユーザーのリモート ログインが許可されなくなります。これにより、ロボットやハッカーが root ユーザーのパスワードを推測するのを防ぐことができます。

yと入力してEnter キーを押すと、テスト データベースが削除されます。

yと入力してEnter キーを押すと、権限テーブルが再ロードされます。
それで完了です。

テストとして、MySQL サーバーにログインして version コマンドを実行できます。

$ sudo mysqladmin -p -u ルートバージョン

ここでの最初のパスワードは root ユーザーのパスワードであり、2 番目のパスワードは先ほど設定した MySQL root パスワードです。
先ほど設定した MySQL ルート パスワードを入力すると、次のように表示されます。

MySQL が正常にインストールされ、構成されました。

5. PHPをインストールする

まず、リポジトリを更新し、apt を使用して PHP パッケージをインストールします。さらに、PHP が MySQL データベースと通信できるようにする libapache2-mod-php と PHP-MySQL という 2 つのパッケージもインストールします。

$ sudo apt update && sudo apt install php libapache2-mod-php php-mysql 

PHP パッケージをインストールするように求められたら、 yを押してEnter キーを押します

6. PHPのテスト

パッケージがインストールされると、コマンドラインから PHP をテストできます。

$ php -version

PHP が正しくインストールされている場合は、次のような表示が出ます。

では、Apache 用の PHP をテストしてみましょう。
ドキュメントルートにinfo.phpという新しいファイルを作成します。
Ubuntu 18.04のデフォルトのドキュメントルートディレクトリは/var/www/html/です。

ドキュメント ルートの場所を決定したら、vi または vim または gedit または別のテキスト エディターを使用して、info.php という新しいファイルを作成します。 (viに慣れていない場合は、ビジュアルテキストエディタgeditを使用することをお勧めします)
この例では、/var/www/html/に新しいファイルを作成します。

$ sudo vi /var/www/html/info.php

info.php に書き込まれる内容は次のとおりです。

<?php
phpinfo(); 
?>

下記の通り

次に保存して終了します。

次のように入力して、このファイルをブラウザに読み込むことができます。
http://your_ip/info.php
私のアドレスは 192.168.1.10 なので、ブラウザに http://192.168.1.10/info.php と入力しました。
IP アドレスがわからない場合は、次のコマンドを実行して確認できます。

$ sudo ifconfig | grep -Eo 'inet (addr:)?([0-9]*\.){3}[0-9]*' | grep -Eo '([0-9]*\.){3}[0-9]*' | grep -v '127.0.0.1' 

以下では、PHP 情報ページが正常に動作していることがわかります。

PHP が正常に動作していることを確認したら、ハッカーにとって有用な情報が含まれている可能性があるため、info.php を削除することが重要です。

$ sudo rm /var/www/html/info.php

それでもphpMyAdminをインストールしたい場合は、引き続き「Ubuntu 18.04にphpMyAdminをインストールする」を参照してください。

参考: Apache、MySQL、PHP (LAMP) スタックのインストール

要約する

上記は、Ubuntu 18.04 に Apache、MySQL、PHP、LAMP をインストールするための完全なチュートリアルです。お役に立てれば幸いです。ご質問がある場合は、メッセージを残してください。すぐに返信いたします。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。
この記事が役に立ったと思われた方は、ぜひ転載していただき、出典を明記してください。ありがとうございます!

以下もご興味があるかもしれません:
  • Ubuntu 18.04 Linux システムに JDK と Mysql をインストールする方法
  • Ubuntu 18.04 で MySQL のインストール時にパスワードが要求されない場合の解決方法
  • Ubuntu 18.04.4 に MySQL をインストールするプロセスの詳細な説明

<<:  Visual Studio Code + Reactをベースに開発環境を構築するプロセス

>>:  MySQL ストアドプロシージャとストアドファンクションの詳細な説明

推薦する

Linux は n 日前のログとサンプルコマンドを自動的に削除します

1. ファイル削除コマンド:対応するディレクトリを検索します -mtime + 日数 -name &...

JQuery データグリッドクエリの詳細な説明

目次ツリー項目にコードを追加します。 1. 右側に関連情報ページを保存します(userManage....

Vue での ref の使用法とデモンストレーション

ref 定義:要素またはサブコンポーネントの参照情報を登録するために使用されます。参照情報は、親コン...

TypeScript におけるインターフェースと型メソッドの正しい使用例

目次序文インタフェースタイプ付録: インターフェースとタイプの違い要約する序文インターフェースとタイ...

JavaScriptにおける評価戦略の詳細な説明

目次それを覆う栗パラメータの受け渡し値渡し共同配送要約する拡張機能 - 遅延評価私は最近、JavaS...

JavaScript における BOM と DOM の詳細な説明

目次BOM (ブラウザ オブジェクト モデル) 1. ウィンドウブラウザのウィンドウサイズを取得する...

DIV と画像の水平および垂直の中央揃えは複数のブラウザと互換性があります

最初のタイプ: 完全な CSS コントロール、レイヤーフローティング (ログインページに適しています...

MySQLのスケジュールタスクが正常に実行できない原因の分析と解決

目次序文原因分析と解決策スケジュールされたタスクを迅速に実行する要約する序文データベースのスケジュー...

レスポンシブデザインについて知っておくべきこと

レスポンシブデザインとは、ウェブサイトの開発プロセス中に、ユーザーの操作やデバイス環境に応じて対応す...

ラベルタグを使用してテキストをクリックしてラジオボタンを選択します

<label> タグは、入力要素のラベル (タグ) を定義します。ラベル要素はユーザーに...

LinuxにMySQLをインストールし、外部ネットワークアクセスを構成する例

設定手順1. DNSが設定されているかどうかを確認するDNSが設定されていない場合は、前の記事を参照...

W3C チュートリアル (15): W3C SMIL アクティビティ

SMIL は、Web にタイミングとメディアの同期のサポートを追加します。 SMIL は、Web に...

MySQL 文字セットの文字化けとその解決方法

序文文字セットは、一連のシンボルとエンコード規則です。Oracle データベースでも MySQL デ...

MySQL の if 関数の正しい使い方の詳細な説明

今日私が書こうとしている内容では、プログラムは 7 時間近く実行され、データベースに 1,000 万...