Linux
 Computer >> コンピューター >  >> システム >> Linux

UbuntuでLAMP Webサーバーを構築する方法|taskselを使った簡単インストール手順

ポイント

  • ターミナルでsudo apt-get install taskselsudo tasksel install lamp-serverを実行します。
  • MySQLデータベースを保護するには、sudo mysql_secure_installationを実行し、管理者(root)パスワードを設定します。
  • Apacheの動作確認:Firefoxのアドレスバーにhttps://localhostと入力し、「It Works」とUbuntuのロゴが表示されればインストール成功です。

このガイドでは、Ubuntu(20.04 LTSまで対応)のデスクトップ版を使用してLAMP Webサーバーを最も簡単にインストールする方法をご紹介します。LAMPとは、Linux、Apache、MySQL、PHPの頭文字を取った略称です。

Taskselを使ってLAMP Webサーバーをインストールする方法

LAMPスタック全体のインストールは実はとても簡単で、わずか2つのコマンドで完了できます。

他のオンラインチュートリアルでは各コンポーネントを個別にインストールする方法が紹介されていますが、すべて一度にインストールすることも可能です。

  1. まず、ターミナルウィンドウを開きます。CtrlAltTキーを同時に押してください。

  2. ターミナルで以下のコマンドを入力します。

    sudo apt-get install tasksel
    sudo tasksel install lamp-server

    これらのコマンドは、taskselというツールをインストールした後、そのtaskselを使ってlamp-serverというメタパッケージをインストールします。

MySQLパスワードの設定

前の手順のコマンドを実行すると、Apache、MySQL、PHPに必要なパッケージがダウンロード・インストールされます。次に、新しいMySQLデータベースを保護し、管理用の管理者パスワードを設定しましょう。

  1. ターミナルを開き直し、以下のコマンドを実行してMySQLの組み込みセキュリティスクリプトを起動します。

    sudo mysql_secure_installation
  2. スクリプトがパスワード検証機能のセットアップを求めてきたら、Nと入力してください。セキュリティプラグインを有効にすると、後ほどPHPMyAdminなどのツールとの連携に支障が出る可能性があります。

  3. 管理者(root)パスワードの入力を求められます。このパスワードはUbuntuへのログインパスワードとは別のもので、自由に設定できます。このパスワードの所有者はユーザーの作成・削除、権限やスキーマ、テーブルの管理など、データベースサーバー全体を操作できるため、できるだけ強固なものにしておくことをおすすめします。

  4. パスワードを入力すると、サーバーを保護するための質問がいくつか表示されます。すべてにYで答えましょう。

  5. コマンドプロンプトに戻ったら、サーバーが正しく動作しているかテストできます。

Taskselとは?

Taskselを使うと、複数のパッケージをまとめて一度にインストールできます。前述の通り、LAMPはLinux、Apache、MySQL、PHPの頭文字であり、通常は一つをインストールすれば残りも一緒にインストールすることが多いため、こうしたグループ単位のインストールが便利です。

taskselコマンドは単体でも実行できます。

sudo tasksel

これにより、インストール可能なパッケージやパッケージ「グループ」の一覧画面が表示されます。例えば、KDEデスクトップ、Lubuntuデスクトップ、メールサーバー、openSSHサーバーなどをインストールできます。

taskselでソフトウェアをインストールする場合、1つのパッケージではなく、組み合わさって大きな機能を実現する関連パッケージ群をインストールしていることになります。今回の場合、その「大きな機能」こそがLAMPサーバーです。

Apacheサーバーについて知っておきたいこと

Apacheは、Linuxで利用できる多くの種類あるWebサーバーのひとつです。その他にはLighttpdやNGinxなどがあります。

MySQLはデータベースサーバーで、情報の保存や表示によってWebページをインタラクティブにするのに役立ちます。

そしてPHP(Hypertext Preprocessor)は、サーバーサイドのコードやWeb APIを作成するために使えるスクリプト言語です。作成されたAPIは、HTML、JavaScript、CSSなどのクライアントサイド言語から利用されます。

ここではデスクトップ版UbuntuでのLAMPインストール方法を紹介しています。これにより、Web開発の初心者でも自分の作品のための開発環境やテスト環境を構築できます。また、UbuntuのWebサーバーは家庭内イントラネットとして活用することも可能です。

Webサーバーを全世界に公開することも理論上は可能ですが、家庭用コンピューターでは現実的ではありません。ブロードバンド事業者は一般的にIPアドレスを頻繁に変更するため、DynDNSのようなサービスを利用して固定IPアドレス相当を実現する必要があります。さらに、一般家庭の回線帯域ではWebページの配信には不向きな場合がほとんどです。

全世界向けにWebサーバーを公開する場合、Apacheサーバーのセキュリティ対策、ファイアウォールの設定、全ソフトウェアの適切なパッチ適用など、すべての責任を負うことになります。

不特定多数に見てもらえるWebサイトを作りたい場合は、CPanelホスティングを提供しているレンタルWebホスティングサービスを選ぶのがおすすめです。そうすれば、これらの手間をすべて省けます。

Apacheの動作テスト方法

Apacheが正常に動作しているか確認する最も簡単な方法は以下の通りです。

  1. ランチャーのアイコンをクリックしてFirefoxを起動します(上から3番目のアイコン)。

  2. アドレスバーにhttps://localhostと入力します。

  3. 下図のようなWebページが表示されるはずです。「It Works」の文字とUbuntuのロゴ、Apacheの文字が見えれば、インストール成功です。

表示されているページはプレースホルダー(仮ページ)なので、自分でデザインしたWebページに置き換えることができます。独自のWebページを追加するには、/var/www/htmlフォルダにファイルを保存する必要があります。

現在表示されているページはindex.htmlという名前です。このページを編集するには、/var/www/htmlフォルダへのアクセス権限が必要です。権限を付与する方法はいくつかありますが、以下の方法が推奨されます。

  1. ターミナルを開き、以下のコマンドを入力します。

    sudo gpasswd -a usnername www-data
    sudo chown -R www-data:www-data /var/www/html
    sudo chmod -R g+rwx /var/www/html
  2. 最初のコマンドの「username」の部分を実際のユーザー名に置き換えてください。権限を有効にするには一度ログアウトして再ログインが必要です。うまくいかない場合はコンピューターを再起動してください。

PHPがインストールされているか確認する方法

次のステップは、PHPが正しくインストールされているかの確認です。

  1. ターミナルを開き、以下のコマンドを入力します。

    sudo nano /var/www/html/phpinfo.php

    Vim、Emacs、Geditなどをお好みで使いたい場合は、Nanoの代わりにそれらを使用しても構いません。

  2. nanoエディタ内に以下のテキストを入力します。

    <?php phpinfo(); ?>
  3. CtrlOでファイルを保存し、CtrlXでエディタを終了します。

  4. 次に、サーバーがアクセス・実行できるよう、ファイルの権限と所有者を変更します。

    sudo chown www-data:www-data /var/www/html/phpinfo.php
    sudo chmod +x /var/www/html/phpinfo.php
  5. Firefoxブラウザを開き、アドレスバーに以下を入力します。

    https://localhost/phpinfo.php

    PHPが正しくインストールされていれば、上記画像と似たようなページが表示されます。

    PHPInfoページには、インストール済みのPHPモジュール一覧や稼働中のApacheバージョンなど、さまざまな情報が含まれています。

    開発中はこのページを残しておくと、プロジェクトに必要なモジュールがインストールされているかどうかを確認できて便利です。

MySQL Workbenchのご紹介

MySQLだけだとコマンドラインからの管理が難しいため、以下の2つのツールのインストールをおすすめします。

  • MySQL Workbench
  • PHPMyAdmin
  1. MySQLの動作テストは、ターミナルで以下のシンプルなコマンドで行えます。

    sudo mysqladmin -u root -p status

    パスワードの入力を求められたら、Ubuntuのパスワードではなく、MySQLのrootユーザーのパスワードを入力してください。

  2. MySQLが稼働していれば、以下のようなテキストが表示されます。

    Uptime: 6269 Threads: 3 Questions: 33 Slow queries: 0 Opens: 112 Flush tables: 1 Open tables: 31 Queries per second avg: 0.005
  3. MySQL Workbenchをインストールするには、ターミナルを開いて以下のコマンドを実行します。

    sudo apt install mysql-workbench

    もし最新版のUbuntu用パッケージがまだ提供されていない場合は、公式ダウンロードページを確認してください。場合によっては、前のUbuntuバージョン用のパッケージでも問題なく動作することがあります。

    パッケージを入手したら、aptでインストールします。パッケージ名と番号は実際のものに置き換えてください。

    cd ~/Downloads
    sudo apt install ./mysql-workbench-community_X.X.XX-ubuntuXX.XX_amd64.deb
  4. MySQL Workbenchを起動する前に、管理用のユーザーを作成する必要があります。セキュリティ上の理由からrootでログインできないため、別のユーザーが必要です。ベストな方法は、管理したいデータベースごと(またはデータベース群ごと)に新しいユーザーを作成することです。例えばWordPressサイトを立ち上げる場合は、以下のようにします。

    sudo mysql -u root -p
    CREATE DATABASE wordpress;
    CREATE USER `wpadmin`@`localhost` IDENTIFIED BY 'userpassword';
    GRANT ALL ON wordpress.* TO `wpadmin`@`localhost`;
    FLUSH PRIVILEGES;
    \q

    これで、WordPress用の新しいデータベースと、それを管理する「wpadmin」という名前のMySQLユーザー(パスワード:userpassword)が作成されました。

  5. ソフトウェアのインストールが完了したら、ランチャーのアプリケーションアイコンを押し、検索ボックスに「MySQL」と入力します。

  6. イルカのアイコンがMySQL Workbenchを表しています。イルカのアイコンが表示されたら選択してください。

  7. MySQL Workbenchを初めて開くと、ウィンドウ下部に汎用的な接続ボックスが表示されます。それを選択し、MySQL Connectionsの横にあるレンチ(編集)アイコンをクリックします。

  8. 接続情報を編集できる新しいウィンドウがポップアップ表示されます。Username欄のrootを選択したユーザー名に変更します。

  9. 接続のたびにパスワードを入力したくない場合は、Passwordの横にあるStore in Keychainを選択し、データベースユーザーのパスワードを入力してください。設定が完了したらウィンドウを閉じます。

  10. もう一度接続を選択すると、データベースに接続されます。

MySQL Workbenchは非常に強力なツールですが、少し動作が遅い面もあります。

左側のバーから、管理したいMySQLサーバーの項目を選択できます。例えば:

  • サーバーステータスの確認
  • クライアント接続の一覧表示
  • ユーザーと権限の管理
  • システム変数の管理
  • データのエクスポート
  • データのインポート

サーバーステータスオプションでは、サーバーが稼働中かどうか、稼働時間、サーバー負荷、接続数など、さまざまな情報を確認できます。

クライアント接続オプションでは、MySQLサーバーへの現在の接続一覧を表示できます。

「ユーザーと権限」では、新規ユーザーの追加、パスワードの変更、各データベーススキーマに対するユーザー権限の設定が行えます。

MySQL Workbenchの左下にはデータベーススキーマの一覧があります。右クリックしてCreate Schemaを選択すると、独自のスキーマを追加できます。

任意のスキーマをクリックすると展開され、テーブル、ビュー、ストアドプロシージャ、関数などのオブジェクト一覧を表示できます。

オブジェクトを右クリックすると、新しいテーブルなどの新規オブジェクトを作成できます。

MySQL Workbenchの右側のパネルで実際の作業を行います。例えば、テーブル作成時にはカラムとそのデータ型を追加できます。また、ストアドプロシージャの基本テンプレートがエディタ内に提供され、そこに実際のコードを記述できます。

PHPMyAdminのインストール方法

MySQLデータベース管理によく使われるツールがPHPMyAdminです。このツールをインストールすれば、Apache、PHP、MySQLがすべて正しく連携していることも最終的に確認できます。

  1. ターミナルを開き、以下のコマンドを入力します。

    sudo apt install phpmyadmin
  2. どのWebサーバーをインストールしているか尋ねるウィンドウが表示されます。

    デフォルトでApacheが選択されているので、TabキーでOKボタンをハイライトし、Enterキーを押します。

  3. 次に、PHPMyAdminで使用するデフォルトのデータベースを作成するかどうか尋ねるウィンドウがポップアップします。

    TabキーでYesを選択し、Enterキーを押します。

  4. PHPMyAdminがデータベースを管理するユーザー名を尋ねてきます。デフォルトは「phpmyadmin」です。そのまま使っても、覚えやすい名前に変更しても構いません。

  5. 最後に、PHPMyAdminデータベースのパスワード設定を求められます。PHPMyAdminにログインする際に使用するので、安全なものを設定してください。

    ソフトウェアがインストールされ、コマンドプロンプトに戻ります。

  6. 次の作業は必要ない場合もあります。Ubuntu 20.04 LTSでのテストでは不要でした。まずはPHPMyAdminを使ってみて、すぐに動作しなければこのステップに戻ってきてください。

    以下の一連のコマンドを実行して、PHPMyAdmin用にApacheを設定します。

    sudo ln -s /etc/phpmyadmin/apache.conf /etc/apache2/conf-available/phpmyadmin.conf
    sudo a2enconf phpmyadmin.conf
    sudo systemctl reload apache2.service

    上記コマンドは、/etc/phpmyadminフォルダのapache.confファイルから/etc/apache2/conf-availableフォルダへのシンボリックリンクを作成します。

    2行目でApache内のphpmyadmin設定ファイルを有効化し、最後の行でApache Webサービスを再読み込みします。

  7. 以上の設定により、以下の手順でPHPMyAdminを使ってデータベースを管理できるようになります。

    • Firefoxを開く
    • アドレスバーにhttps://localhost/phpmyadminと入力
    • パスワード欄にPHPMyAdminのパスワードを入力し、Goボタンを押す
  8. PHPMyAdminの管理画面に移動するので、そこからデータベースを管理できます。

PHPMyAdminは、MySQLデータベースを管理するためのWebベースのツールです。

左側のパネルにはデータベーススキーマの一覧が表示されます。スキーマをクリックすると展開され、データベースオブジェクトの一覧が表示されます。

上部のアイコンバーから、MySQLのさまざまな機能を管理できます:

  • データベース
  • SQLエディター
  • サーバーステータス
  • ユーザーアカウント
  • データのエクスポート
  • データのインポート
  • 設定
  • レプリケーション
  • 変数
  • 文字セット
  • エンジン
  • プラグイン

さらに学ぶために

データベースサーバーが稼働するようになったら、本格的なWebアプリケーション開発に取り掛かることができます。

HTML、CSS、ASP、JavaScript、PHPを学ぶ良い出発点としてはW3Schoolsがおすすめです。

このサイトには、クライアントサイドとサーバーサイド両方のWeb開発に関する、充実しながらも分かりやすいチュートリアルが揃っています。

深い専門知識まで身につくわけではありませんが、基礎と概念を十分に理解して、学習の第一歩を踏み出せるでしょう。

  1. UbuntuにPipをインストールする方法を徹底解説【Python 2/3対応】

    Linuxには実に多くのパッケージマネージャーが存在します。Ubuntuにはaptが標準搭載されていますが、プログラミング言語の多くも独自のパッケージマネージャーを持っています。Node.jsにはnpm、Rubyにはgem、そしてPythonにはpipが用意されています。 Pipは「Python Installs Packages」の略で、Python Package Index(PyPI)からパッケージを簡単にインストールできるツールです。他のインデックスからインストールすることも可能ですが、通常必要となるパッケージの大半はPyPIで入手できます。pipを使ってパッケージを導入するには、ま

  2. VirtualBoxを使ってWindows 10にUbuntuをインストールする完全ガイド

    Windowsをお使いの方でも、OSを切り替えることなくUbuntuを利用することができます。その鍵となるのが、VirtualBoxを使った仮想環境の構築です。仮想マシンの大きなメリットは、必要なときだけ起動できる点と、ディスクのパーティション分割といった特別な作業が一切不要な点にあります。 この記事では、VirtualBoxを使用してWindows 10上にUbuntuをインストールする手順を、初心者にもわかりやすく解説します。 作業を始める前に、以下の3つのソフトウェアをダウンロードしておきましょう。 Oracle VirtualBox Ubuntu(ISOイメージ) VirtualBo