[AWS] WordPress環境の構築 (1)

構築したLAMP環境にWordPressパッケージをダウンロードしセットアップしていきます。

WordPressとは、だれでも簡単にブログやWebサイトの作成ができるソフトウェアである「コンテンツマネジメントシステム(CMS)」の一つ
https://www.xserver.ne.jp/blog/about-wordpress/#WordPress

【構築環境】


1.WordPressパッケージをダウンロード

wget Webサーバーからファイルをダウンロード
https://qiita.com/katsukii/items

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

[ec2-user@ip-172-31-33-34 ~]$ pwd
/home/ec2-user
[ec2-user@ip-172-31-33-34 ~]$ wget https://wordpress.org/latest.tar.gz
--2025-02-24 14:22:20--  https://wordpress.org/latest.tar.gz
Resolving wordpress.org (wordpress.org)... 198.143.164.252
Connecting to wordpress.org (wordpress.org)|198.143.164.252|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 26780969 (26M) [application/octet-stream]
Saving to: ‘latest.tar.gz’

latest.tar.gz            100%[=================================>]  25.54M  7.98MB/s    in 3.8s    

2025-02-24 14:22:24 (6.69 MB/s) - ‘latest.tar.gz’ saved [26780969/26780969]

[ec2-user@ip-172-31-33-34 ~]$ ll
total 26156
-rw-r--r--. 1 ec2-user ec2-user 26780969 Feb 11 16:16 latest.tar.gz
[ec2-user@ip-172-31-33-34 ~]$ 

2.WordPressパッケージの解凍

「tar」は、複数のファイルを1つにまとめたアーカイブファイルを作成/展開するコマンド
https://qiita.com/a05kk/items

tar -xzvf latest.tar.gz

[ec2-user@ip-172-31-33-34 ~]$ tar -xzvf latest.tar.gz
wordpress/
wordpress/index.php
wordpress/license.txt
wordpress/readme.html
wordpress/wp-activate.php
〜〜略〜〜
wordpress/wp-trackback.php
wordpress/xmlrpc.php
[ec2-user@ip-172-31-33-34 ~]$ 
[ec2-user@ip-172-31-33-34 ~]$ ll
total 26172
-rw-r--r--. 1 ec2-user ec2-user 26780969 Feb 11 16:16 latest.tar.gz
drwxr-xr-x. 5 ec2-user ec2-user    16384 Feb 11 16:11 wordpress

3.解凍したWordPressパッケージを移動

sudo mv wordpress/* /var/www/html/

[ec2-user@ip-172-31-33-34 ~]$ sudo mv wordpress/* /var/www/html/
[ec2-user@ip-172-31-33-34 ~]$ ll /var/www/html/
total 244
-rw-r--r--.  1 ec2-user ec2-user   405 Feb  6  2020 index.php
-rw-r--r--.  1 ec2-user ec2-user 19915 Jan  1  2024 license.txt
-rw-r--r--.  1 ec2-user ec2-user  7409 Jun 18  2024 readme.html
-rw-r--r--.  1 ec2-user ec2-user  7387 Feb 13  2024 wp-activate.php
drwxr-xr-x.  9 ec2-user ec2-user 16384 Feb 11 16:11 wp-admin
-rw-r--r--.  1 ec2-user ec2-user   351 Feb  6  2020 wp-blog-header.php
-rw-r--r--.  1 ec2-user ec2-user  2323 Jun 14  2023 wp-comments-post.php
-rw-r--r--.  1 ec2-user ec2-user  3336 Oct 15 15:24 wp-config-sample.php
drwxr-xr-x.  4 ec2-user ec2-user    52 Feb  4 21:01 wp-content
-rw-r--r--.  1 ec2-user ec2-user  5617 Aug  2  2024 wp-cron.php
drwxr-xr-x. 30 ec2-user ec2-user 16384 Feb 11 16:11 wp-includes
-rw-r--r--.  1 ec2-user ec2-user  2502 Nov 26  2022 wp-links-opml.php
-rw-r--r--.  1 ec2-user ec2-user  3937 Mar 11  2024 wp-load.php
-rw-r--r--.  1 ec2-user ec2-user 51367 Sep 30 19:12 wp-login.php
-rw-r--r--.  1 ec2-user ec2-user  8543 Sep 18 22:37 wp-mail.php
-rw-r--r--.  1 ec2-user ec2-user 29032 Sep 30 17:08 wp-settings.php
-rw-r--r--.  1 ec2-user ec2-user 34385 Jun 19  2023 wp-signup.php
-rw-r--r--.  1 ec2-user ec2-user  5102 Oct 18 15:56 wp-trackback.php
-rw-r--r--.  1 ec2-user ec2-user  3246 Mar  2  2024 xmlrpc.php
[ec2-user@ip-172-31-33-34 ~]$ 

4.権限の変更

【変更内容】
Webサーバー(Apache)がWordPress内のファイルにアクセス及び読み書きできるように、所有権を下記に変更
 ●所有者:Apacheユーザー
 ●グループ:Apacheグループ
また、WordPressディレクトリ内の不要な権限をなくすため、ディレクトリ権限を下記に変更
 ●所有者:書き込み・読み込み・実行可能
 ●グループ:権限なし
 ●その他グループ:読み込み・実行可能
※権限についてはセキュリティや利便性の観点、サイトの使用用途に応じて設定することをお勧めしますが、今回はこの権限で設定

chownコマンド、ファイルやディレクトリのユーザーやグループの所有権を変更するためのコマンド
https://qiita.com/3062_in_zamud/items

find コマンドで見つけたファイルの数の分だけ実行される
https://daeudaeu.com/exec-xargs/#-exec-3

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

[ec2-user@ip-172-31-33-34 ~]$ sudo chown -R apache:apache /var/www
[ec2-user@ip-172-31-33-34 ~]$ sudo find /var/www -type d -exec chmod 0705 {} \;
[ec2-user@ip-172-31-33-34 ~]$ 
[ec2-user@ip-172-31-33-34 ~]$ ll /var/www/html/
total 244
-rw-r--r--.  1 apache apache   405 Feb  6  2020 index.php
-rw-r--r--.  1 apache apache 19915 Jan  1  2024 license.txt
-rw-r--r--.  1 apache apache  7409 Jun 18  2024 readme.html
-rw-r--r--.  1 apache apache  7387 Feb 13  2024 wp-activate.php
drwx---r-x.  9 apache apache 16384 Feb 11 16:11 wp-admin
-rw-r--r--.  1 apache apache   351 Feb  6  2020 wp-blog-header.php
-rw-r--r--.  1 apache apache  2323 Jun 14  2023 wp-comments-post.php
-rw-r--r--.  1 apache apache  3336 Oct 15 15:24 wp-config-sample.php
drwx---r-x.  4 apache apache    52 Feb  4 21:01 wp-content
-rw-r--r--.  1 apache apache  5617 Aug  2  2024 wp-cron.php
drwx---r-x. 30 apache apache 16384 Feb 11 16:11 wp-includes
-rw-r--r--.  1 apache apache  2502 Nov 26  2022 wp-links-opml.php
-rw-r--r--.  1 apache apache  3937 Mar 11  2024 wp-load.php
-rw-r--r--.  1 apache apache 51367 Sep 30 19:12 wp-login.php
-rw-r--r--.  1 apache apache  8543 Sep 18 22:37 wp-mail.php
-rw-r--r--.  1 apache apache 29032 Sep 30 17:08 wp-settings.php
-rw-r--r--.  1 apache apache 34385 Jun 19  2023 wp-signup.php
-rw-r--r--.  1 apache apache  5102 Oct 18 15:56 wp-trackback.php
-rw-r--r--.  1 apache apache  3246 Mar  2  2024 xmlrpc.php
[ec2-user@ip-172-31-33-34 ~]$ 

5.作業用アカウントの検索ボックスで”ec2″と検索しクリック

6.インスタンスをクリックし、対象のインスタンスIDをクリック

7.”セキュリティ”をクリック

8.”セキュリティグループ”をクリック

9.”インバウンドのルールを編集”をクリック

10.”ルールを追加”をクリック

11.必要情報を入力し、”ルールを保存”をクリック

タイプ:”HTTP”
ソース:”0.0.0.0/0″

12.インバウンドルールが追加されていることを確認

13.インスタンスをクリックし、対象のインスタンスIDをクリック

14.パブリック IPv4アドレスのをクリック

15.PCのブラウザを起動して、URLを入力

URL:http://”コピーしたパブリック IPv4アドレス”

16.”It works!”と表示されることを確認

※Apacheサービスを起動しているサーバにアクセスするとデフォルトで上記が表示されます。

17.ターミナルにてEC2のApacheサービスの再起動
   ( “/var/www/html/” 以下に移動したWordPressを読み込み)

sudo systemctl restart httpd

[ec2-user@ip-172-31-33-34 ~]$ sudo systemctl restart httpd
[ec2-user@ip-172-31-33-34 ~]$ sudo systemctl status httpd
● httpd.service - The Apache HTTP Server
     Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled; preset: disabled)
    Drop-In: /usr/lib/systemd/system/httpd.service.d
             └─php-fpm.conf
     Active: active (running) since Tue 2025-02-25 12:20:58 UTC; 5min ago
       Docs: man:httpd.service(8)
   Main PID: 159387 (httpd)
     Status: "Total requests: 1; Idle/Busy workers 100/0;Requests/sec: 0.00313; Bytes served/sec:  11 B/sec"
      Tasks: 230 (limit: 1111)
     Memory: 16.4M
        CPU: 256ms
     CGroup: /system.slice/httpd.service
             ├─159387 /usr/sbin/httpd -DFOREGROUND
             ├─159389 /usr/sbin/httpd -DFOREGROUND
             ├─159390 /usr/sbin/httpd -DFOREGROUND
             ├─159391 /usr/sbin/httpd -DFOREGROUND
             ├─159392 /usr/sbin/httpd -DFOREGROUND
             └─159687 /usr/sbin/httpd -DFOREGROUND

Feb 25 12:20:58 ip-172-31-33-34.ap-northeast-1.compute.internal systemd[1]: Starting httpd.service - The Apache H>
Feb 25 12:20:58 ip-172-31-33-34.ap-northeast-1.compute.internal systemd[1]: Started httpd.service - The Apache HT>
Feb 25 12:20:58 ip-172-31-33-34.ap-northeast-1.compute.internal httpd[159387]: Server configured, listening on: p>
[ec2-user@ip-172-31-33-34 ~]$

18.WordPressの画面が表示されることを確認

※PHP、MySQLの設定がまだ完了していないためエラーが表示されてます。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA