ぽれいんのブログ

エンジニアになるために覚えたことを日記に付けます。

ブログサイトの構築

はじめに

インフラエンジニア初学者のぽれいんと申します。

転職する前はプログラミングスクールにて主にHTML、CSSRubyMySQL等について学びました。

※このブログでは自分が後々、見返すことができるようにまとめることを目的としていますが、もし需要があるようでしたら是非ともご覧ください。

<前回の記事>

porain.hatenablog.com

↑↑まだ見ていない方はこちらから↑↑

 

 

 

 

本日のやりたいこと

今回はAmazonEC2のインスタンス上にブログサイトを構築します。

ブログサイトには「wordpress」というブログ用のソフトウェアを使用します。

使用する環境

qiita.com

 

 

構築の流れ

以下の手順で構築を行います。

----------------------------------------------------------

Apache をインストールする

PHPをインストールする

MariaDBをインストールする

④phpMyAdominをインストールする

WordPressをインストールする

⑥データベースのセットアップ

WordPressの設定

-----------------------------------------------------------

いざ構築!!

Apache をインストールする

rootユーザになる

sudo su -

httpdをインストール

yum install httpd

(yを押下)

Apache自動起動をオンにしてApacheを起動

systemctl enable httpd
systemctl start httpd

 

PHPをインストールする

PHPをインストール

amazon-linux-extras enable php7.3
yum install php php-gd php-mysqlnd php-xmlrpc -y

→Conplete! でインストール完了!

※バージョンは最新のものに適宜置き換えてください。

MariaDBをインストールする

MariaDBをインストール

 yum install mariadb mariadb-server -y

MariaDB自動起動をオンにしMariaDBを起動

 systemctl enable mariadb
systemctl start mariadb

mysql_sequre_installationを実行

 mysql_secure_installation
⑴ Enter current password for root (enter for none):
  データベースのrootユーザのパスワードはまだ設定されてないので
  何も入力せずにenterを押す。
⑵ enter current password for root (enter for none):
  データベースの root ユーザーのパスワードをこれから設定したいので
'Y' と入力して Enter を押す。
⑶ Set root password? [Y/n]
  安全なパスワードを 2回入力
  New password:
  Re-enter new password:
  Password updated successfully!
⑷ 以下全部 Y を入力

 

④phpMyAdominをインストールする

※このphpMyAdminをダウンロードする工程は飛ばしても構築は可能です。

急ぎの方は⑤にお進みください。。。

 

phpMyAdminの関連パッケージをインストール

 yum install php-mbstring php-fpm -y

Apacheを再起動

 systemctl restart httpd

カレントディレクトリを/var/www/htmlに移動

 cd /var/www/html

phpMyAdminをダウンロード

 wget https://www.phpmyadmin.net/downloads/phpMyAdmin-latest-all-languages.tar.gz

phpMyAdminディレクトリを作成してphpMyAdmin パッケージを展開(解凍)し元のファイルを削除

 mkdir phpMyAdmin && tar -xvzf phpMyAdmin-latest-all-languages.tar.gz -C phpMyAdmin --strip-components 1

rm phpMyAdmin-latest-all-languages.tar.gz
:yを入力

ブラウザよりアクセス 

 <URL>

 http://[パブリックDNS]/phpMyAdmin

 

f:id:porain:20210810174300p:plainユーザ名 : root

パスワード: mysql_secure_installation で設定したパスワード

 

を入力して "実行" ボタンをクリック

これで、普通SQL文を書いて行うデータの登録や更新といった管理をGUIで感覚的に行うことができるようになります。今回はCUISQL文を書いてデータ登録等を行いますので使いません。

WordPressをインストールする

ホームディレクトリに戻る

cd
pwd

WordPress関連パッケージをダウンロードして展開(解凍)

 wget https://wordpress.org/latest.tar.gz

tar -xzvf latest.tar.gz

⑥データベースのセットアップ

mysqlにログイン

 mysql -u root -p

mysql_sequre_installationにて設定したパスワードを入力

データベースのユーザーとパスワードを作成
CREATE USER 'wordpress-user'@'localhost' IDENTIFIED BY 'your_strong_password';

※your_strong_passwordはご自身で考えたパスワードをご使用ください。

データベースを作成
CREATE DATABASE `wordpress-db`;

データベースに対して、さきほど作成した wordpress-user ユーザーの権限を追加

GRANT ALL PRIVILEGES ON `wordpress-db`.* TO "wordpress-user"@"localhost";

すべての変更を有効にするため、データベース権限をフラッシュ

FLUSH PRIVILEGES;

mysql クライアントを終了

Ctrl+DでExit

WordPressの設定

ホームディレクトリに戻る

 cd
pwd

WordPressの設定ファイルを変更する前にバックアップを作成

 cp wordpress/wp-config-sample.php wordpress/wp-config.php

設定ファイルを編集

 vi wordpress/wp-config.php
以下を変更
-----------------------------------------
define( 'DB_NAME', 'database_name_here' );

define( 'DB_NAME', 'wordpress-db' );
に変更
define( 'DB_USER', 'username_here' );

define( 'DB_USER', 'wordpress-user');
に変更
define( 'DB_PASSWORD', 'password_here' );

define( 'DB_PASSWORD', 'your_strong_password');
に変更
--------------------------------------------

 ※your_strong_passwordはご自身で設定したパスワード。

Wordpressファイルの配置

Wordpressディレクトリを/var/ww/html/blog/ディレクトリにコピー

 mkdir /var/www/html/blog
cp -r wordpress/* /var/www/html/blog/

httpd.confのバックアップを作成し、#を排除

cd /etc/httpd/conf
mv httpd.conf httpd.conf.org
grep -v -e '^#' -e ' #' httpd.conf.org > httpd.conf

ホームディレクトリに戻る

cd
pwd

httpd.confを修正

vi /etc/httpd/conf/httpd.conf
以下を変更
-----------------------------------------
<Directory "/var/www/html">
 Options Indexes FollowSymLinks

 AllowOverride None AllowOverride All

 Require all granted
</Directory>
-----------------------------------------

Apacheによるファイル書き込みの許可

 sudo chown -R apache /var/www
sudo chgrp -R apache /var/www
sudo chmod 2775 /var/www
find /var/www -type d -exec sudo chmod 2775 {} \;

Apacheの再起動

 sudo systemctl restart httpd
ブラウザよりWordPressをインストール

<URL>
http://[パブリックDNS]/blog/wp-admin/install.php

 

<補足>

#エラーが発生する場合

<URL>

http://[パブリックDNS]/blog/wp-admin/install.php

を表示しようとしてもエラーが出る場合は、⑦の設定ファイルに誤りがある可能性があるので確認してみてください。

もし、誤りがみつかった場合は変更を保存した後に以下コマンドより、⑦で行ったコピー元にも反映させてください。

cp wordpress/wp-config.php /var/www/html/blog/wp-config.php

yを押下でコピーを承諾

 

以上