Blog Article

Ubuntuでサーバー構築11|MySQL,PHP編

はじめに

これまでの、環境構築でみなさんはWEBページを制作できるようになりましたが。 WEBページには2種類のタイプがあります。それは、静的コンテンツと動的コンテンツ と呼ばれるものです。これらの違いをざっくり言いますと、静的コンテンツは、ただ情報が 表示されるだけであるのに対して、動的コンテンツでは、ユーザーのアクションに応じて ページ内部の表示が変化するコンテンツです。
例えば、みなさんがあるホテルのWEBサイトを作るとしましょう。このとき、お客さんに ホテルの利用料金や予約方法とかの情報だけを表示するWEBサイトを作った場合、これは 静的コンテンツであるといえます。
逆に上述した情報に加えて、予約用のフォームを作成し、ユーザーが予約の アクションを起こせば、部屋の予約やクレジットの決算ができるようになっていれば、 それは動的コンテンツであるといえます。そして、ホテルの経営者や宿泊客ともに、 動的コンテンツとしてのWEBサイトの方が、メリットが高いと感じるのではないでしょうか。
そこで、WEBサーバーが動的コンテンツを提供できるようにするため、 サーバー言語としてPHPを、データベースとしてMySQLをダウンロードし、 動的コンテンツの提供に対応できるようにしましょう。

MySQLの導入

以下の手順でMySQLをサーバーに導入します。

  • MySQL関連パッケージをインストールします。
$ sudo apt -y install mysql-server mysql-client
  • MySQLにrootログインするために、以下のコマンドを入力します。
$ sudo mysql -u root -p
Enter password:パスワードなしでEnterキーを押します。
  • 初期設定用のrootパスワードを設定して、MySQLから一旦抜けます。
mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password by 'パスワード';
mysql>quit;
  • MySQLのセキュリティスクリプトを開きます。
$ sudo mysql_secure_installation
  • 以下のように入力して設定します。
Enter password for user root:3で設定したパスワードを入力
...
Change the password for root ? ((Press y|Y for Yes, any other key for No) :Yを入力
New password:パスワードを入力
Re-enter new password:パスワードを再入力
Do you wish to continue with the password provided?(Press y|Y for Yes, any other key for No) :Yを入力
Remove anonymous users? (Press y|Y for Yes, any other key for No) : Yを入力
Disallow root login remotely? (Press y|Y for Yes, any other key for No) :絶対Yを入力すること!
Remove test database and access to it? (Press y|Y for Yes, any other key for No) :Yを入力
Reload privilege tables now? (Press y|Y for Yes, any other key for No) :Yを入力
  • 以下のコマンドでログインできれば完了です。
$ sudo mysql -u root -p

PHPの導入

次にHTTPSの設定を行います。

  • 以下のコマンドでPHP関連のパッケージをインストールします。
$sudo apt -y install php php-mysql libapache2-mod-php
  • 日本語に対応させるためマルチバイトモジュールを導入する(日本語ユーザーには超重要)。
$ sudo apt-add-repository universe
$ sudo apt update
$ sudo apt install php-mbstring
  • 関連システムの再起動を行います。
$ sudo systemctl restart apache2
$ sudo systemctl restart mysql

おわりに

お疲れ様です。これでWEBサーバー講座は完了です。おわりにですが、本サイトがあなたのインターネットライフに1mmでも貢献できれば、幸いです。