Rocky LinuxにLAMPと無料のLet's Encrypt SSLを使用してWordPressをインストールする方法
Rocky LinuxにLAMPと無料のLet's Encrypt SSLを使用してWordPressをインストールする方法
このページで
- 前提条件
- Apache/Httpdウェブサーバーのインストール
- PHPパッケージのインストール
- MariaDBサーバーのインストールと設定
- WordPress用のデータベースとユーザーを作成する
- WordPressをダウンロード
- WordPressの設定
- Rocky Linuxでhttpdのmod_sslを有効にする
- Rocky LinuxでSSL Letsencryptを生成する
- WordPressの仮想ホストの設定
- WordPressのインストール
- 結論
WordPressは現在最も人気のあるコンテンツ管理システム(CMS)の1つであり、何百万もの人々に利用されています。WordPressプロジェクトは2003年にCMS「b2/cafelog」からフォークとして始まり、GPLv2ライセンスのもとに提供され、無料のオープンソースソフトウェアとなっています。
現時点で、インターネット上のウェブサイトの34%以上がWordPressを使用しています。WordPressがこれほど人気である理由の一つは、シンプルで使いやすく、柔軟性があるからです。何百、何千というプラグインがあるため、WordPressはシンプルなブログエンジン、eコマースウェブサイト、シンプルな企業プロフィール、オンラインフォーラムコミュニティなど、いくつかの異なる方法で使用することができます。
このガイドでは、Rocky Linux 8.4にWordPress CMSをインストールする方法を学びます。LAMPスタック(Linux、Apache2/httpd、MySQL/MariaDB、PHP)の下にWordPressをインストールします。
前提条件
- Rocky Linuxサーバー。すべてのパッケージが最新バージョンに更新されていることを確認してください。
- ルート特権を持つユーザー。このユーザーはsudoコマンドを使用してルート特権を取得します。
Apache/Httpdウェブサーバーのインストール
最初に、Rocky LinuxサーバーにApacheまたはhttpdウェブサーバーをインストールします。
1. 以下のdnfコマンドを実行してhttpdウェブサーバーをインストールします。
sudo dnf install httpd
y を入力し、Enter を押して httpd パッケージの確認とインストールを行ってください。
2. インストールが完了したら、次のコマンドを使用してhttpdサービスを有効にし、起動します。
sudo systemctl enable httpd
sudo systemctl start httpdsystemctl enable コマンドは、サービスが毎回ブート時に起動するように設定します。
3. その後、以下のコマンドを実行してhttpdサービスを確認します。
sudo systemctl status httpdそして、あなたは以下のような結果を得るでしょう。
上のスクリーンショットに見られるように、httpdはアクティブで実行中です。
PHPパッケージのインストール
現在、WordPress CMSをインストールするにはPHP 7.4以上が必要です。これからremiリポジトリからPHP 7.4をインストールします。
1. epelおよびremiリポジトリを追加するために、以下のコマンドを実行してください。
sudo dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
sudo dnf install https://rpms.remirepo.net/enterprise/remi-release-8.rpm
「y」と入力して「Enter」を押すと、epel と remi リポジトリが追加されます。
インストールが完了したら、次のコマンドを使用してepelおよびRemiリポジトリを確認してください。
sudo dnf repolistリポジトリのリストにepelとremiリポジトリが表示されます。
2. 次に、デフォルトのリポジトリモジュールPHPをリセットします。それから、remiリポジトリからPHP 7.4用のモジュールを有効にします。
デフォルトのPHPモジュールリポジトリをリセットするには、次のコマンドを実行してください。
sudo dnf module reset phpそのプロセスで、「y」と入力し、「Enter」を押してgpgキーremiリポジトリを追加します。
その後、remiリポジトリからphpモジュールを有効にするために、下記のコマンドを実行してください。
sudo dnf module enable php:remi-7.4yと入力して確認し、Enterを押して続行してください。これで、WordPressのインストールのためにPHPとすべての拡張機能をインストールする準備が整いました。
3. 必要な拡張機能を含むPHPをインストールするために、以下のコマンドを実行してください。
sudo dnf install php php-common php-mysqlnd php-gd php-imagick php-bcmathインストールが完了したら、次のステップに進んでください。
MariaDBサーバーのインストールと設定
この段階では、MariaDBデータベースサーバーをインストールし、MariaDBのデプロイをセキュリティで保護し、WordPress用の新しいデータベースとユーザーを作成します。
1. MariaDBデータベースサーバーをインストールするには、以下のコマンドを実行してください。
sudo dnf install mariadb mariadb-serverMariaDBのインストールを待ってください。
2. インストールが完了したら、次のコマンドを使用してMariaDBサービスを有効にし、起動します。
sudo systemctl enable mariadb
sudo systemctl start mariadb4. MariaDBはアクティブで実行中です。MariaDBサービスを確認するには、次のコマンドを実行してください。
sudo systemctl status mariadbmariadbサービスが実行中の場合、以下のような出力が得られます。
5. 次に、MariaDBの展開を確保するために、MariaDBのルートパスワードを設定し、いくつかのデフォルト設定を削除する必要があります。そのために、デフォルトのMariaDBインストールに含まれているコマンドラインツール「mysql_secure_installation」を使用することができます。
mysql_secure_installation コマンドを以下に実行してください。
mysql_secure_installation最初に、mariadbのrootパスワードを設定するよう求められます。
強力なMariaDBのrootパスワードを入力し、もう一度繰り返してください。その後、"Enter"を押して続行してください。
Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorisation.
Set root password? [Y/n] Y
New password:
Re-enter new password:
Password updated successfully!
Reloading privilege tables..
... Success!今すぐ「Y」と入力し、「Enter」を押して、mariadbサーバーからデフォルトの匿名ユーザーを削除してください。
By default, a MariaDB installation has an anonymous user, allowing anyone
to log into MariaDB without having to have a user account created for
them. This is intended only for testing, and to make the installation
go a bit smoother. You should remove them before moving into a
production environment.
Remove anonymous users? [Y/n] Y
... Success!その後、デフォルトユーザー「root」のリモートログインを無効にします。「Y」と入力し、「Enter」を押して続行します。
Normally, root should only be allowed to connect from 'localhost'. This
ensures that someone cannot guess at the root password from the network.
Disallow root login remotely? [Y/n] Y
... Success!Y を再入力して、デフォルトのデータベース "test" を削除し、"Enter" を押してください。
By default, MariaDB comes with a database named 'test' that anyone can
access. This is also intended only for testing, and should be removed
before moving into a production environment.
Remove test database and access to it? [Y/n] Y
- Dropping test database...
... Success!
- Removing privileges on test database...
... Success! 最後に、すべてのテーブルの権限を再読み込みして新しい設定を適用するには、もう一度Yと入力してください。
Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.
Reload privilege tables now? [Y/n] Y
... Success!これでプロセスは完了し、以下の出力が表示されます。
Cleaning up...
All done! If you've completed all of the above steps, your MariaDB
installation should now be secure.
Thanks for using MariaDB!WordPress用のデータベースとユーザーを作成する
1. 以下のmysqlコマンドを使用してmariadbシェルにログインします。
mysql -u root -p2. 次に、新しいデータベース「wordpress_db」を作成するために、以下のmysqlクエリを実行してください。
CREATE DATABASE wordpress_db;3. 次のクエリを実行して新しいデータベースユーザー「wpuser」を作成してください。「strongpassword」をあなたの強いパスワードに変更してください。
CREATE USER wpuser@localhost IDENTIFIED BY 'strongpassword';4. ユーザー「wpuser」に対して、次のクエリを使用して「wordpress_db」にアクセスし、書き込むことを許可します。
GRANT ALL PRIVILEGES ON wordpress_db.* to wpuser@localhost;5. 新しいデータベースの設定を適用するために、すべてのテーブルの権限を再読み込みします。
FLUSH PRIVILEGES;それから「quit」と入力し、「Enter」を押すことで、mariadbシェルを終了できます。
WordPressをダウンロード
1. 作業ディレクトリを「/var/www」に変更し、以下のwgetコマンドを使用してWordPressのソースコードをダウンロードします。
cd /var/www/
wget https://wordpress.org/latest.tar.gz2. WordPressのソースコード「latest.tar.gz」を抽出すると、新しいディレクトリ「wordpress」が得られます。その後、「wordpress」ディレクトリの所有者を「apache」ユーザーに変更します。
tar -xzvf latest.tar.gz
sudo chown -R apache:apache wordpress/これで、WordPressのインストールを設定する準備が整いました。
WordPressの設定
この段階では、WordPressの設定ファイル"wp-config.php"を編集し、データベースの詳細を設定し、認証キーとソルト(追加のセキュリティ保護のため)を追加します。
1. まず、作業ディレクトリを「/var/www/wordpress」に変更します。
cd /var/www/wordpress/2. サンプル設定ファイル「wp-config-sample.php」を「wp-config.php」にコピーし、nanoエディタを使用して設定ファイルを編集します。
cp wp-config-sample.php wp-config.php
nano wp-config.php3. データベースの詳細(DB_NAME、DB_USER、DB_PASSWORD)をあなたのデータベース情報に変更してください。
// ** MySQL settings - You can get this info from your web host ** //
/** The name of the database for WordPress */
define( 'DB_NAME', 'wordpress_db' );
/** MySQL database username */
define( 'DB_USER', 'wpuser' );
/** MySQL database password */
define( 'DB_PASSWORD', 'strongpassword' );
/** MySQL hostname */
define( 'DB_HOST', 'localhost' );
/** Database charset to use in creating database tables. */
define( 'DB_CHARSET', 'utf8' );
/** The database collate type. Don't change this if in doubt. */
define( 'DB_COLLATE', '' );4. 認証キーとソルトを生成するにはこのリンクにアクセスし、その後、以下のように構成をあなたの「wp-config.php」ファイルに貼り付けてください。
/**#@+
* Authentication unique keys and salts.
*
* Change these to different unique phrases! You can generate these using
* the {@link https://api.wordpress.org/secret-key/1.1/salt/ WordPress.org secret-key service}.
*
* You can change these at any point in time to invalidate all existing cookies.
* This will force all users to have to log in again.
*
* @since 2.6.0
*/
define('AUTH_KEY', 'v$4/xyGF7t!^(-Xr~lUKT,1oBxOpxzXPAs)kPE_C%Oc^~^%JN]C-y(k>~Wj+JZRM');
define('SECURE_AUTH_KEY', 'y<|#/jfYs,Y_l;{[`2uNp9SMNH8zNGK[eb&RYqb-+bd<a,Fi<9z9rj2_#=R(5O&s');
define('LOGGED_IN_KEY', '&U8Z{I~,xV%D>FDq+Qx{7@?ZD|_GgYby)z,l5jZDVqLC#&#+]#/6zh1-JQf6n6+X');
define('NONCE_KEY', 'pQv#Z_;q$4E: `AV.0eu-L7JA_BN-dvHV#W|;#s7>PTA<Vfs13S|-pE7RYV8+LX)');
define('AUTH_SALT', '?;-?bWr%zTbx7lphp&]=IQ-P8D?ItOzs?4rGtaNI,kypb4xj$&X|ueIDA}5v?sj|');
define('SECURE_AUTH_SALT', 'mn<t0DVAfMX*SpqKC7NE}xFNZ|4c_N{s7|s-iKR4Jvc#GPc.9H:aW9%k2r?nAe;Z');
define('LOGGED_IN_SALT', 'ni D0H;5wrM3NQLWe<R-Y$j-_{)4{v*abQ(kAbhNrmi&+EXFMW-Gv7SQb6ya[)!s');
define('NONCE_SALT', '=BMV@@hmv:~G/<+_8fPvQ(m%oR.A)%ZPtp``sZWK! !G6C%UYPrKU{xQJD.<bd45');
/**#@-*/「Ctrl+x」を押し、「y」と入力して保存して終了します。
Rocky Linuxでhttpdのmod_sslを有効にする
このチュートリアルでは、WordPressをインストールし、LetsencryptからSSLを使用して保護します。そのため、Rocky Linuxのhttpdサーバーでmod_sslを有効にする必要があります。
1. 以下のdnfコマンドを使用して「mod_ssl」パッケージをインストールします。
sudo dnf install mod_ssl mod_http22. その後、以下のopensslコマンドを使用してlocalhost用のデフォルトSSLを生成します。
openssl req -newkey rsa:2048 -nodes -keyout /etc/pki/tls/private/localhost.key -x509 -days 365 -out /etc/pki/tls/certs/localhost.crtすべての質問についてエンターを押すだけで大丈夫です。この証明書はローカルホストでのみ使用され、WordPressのドメイン名には使用されません。
3. 次に、httpdウェブサーバーでmod_sslが利用可能であることを確認するために、次のコマンドを実行してください。
apachectl -M | grep ssl「ssl」のような出力が得られた場合、mod_sslは有効です。そうでない場合は、空の出力が得られます。
Rocky LinuxでSSL Letsencryptを生成する
このステージでは、cerbotツールをインストールし、WordPressインストール用のSSL証明書を生成します。ウェブルートプラグインを使用してLetsencryptのSSLを生成します。
1. SSL Letsencryptを生成するためのcertbotツールをインストールするには、次のコマンドを実行してください。
sudo dnf install certbotインストールプロセスを待ってください。
2. インストールが完了したら、次のコマンドを使用して、letsencrypt 認証用の新しいディレクトリを作成します。
sudo mkdir -p /var/lib/letsencrypt/.well-known
sudo chgrp apache /var/lib/letsencrypt
sudo chmod g+s /var/lib/letsencrypt次に、作業ディレクトリを「/etc/httpd/conf.d/」に変更し、nanoエディタを使用して新しい設定「well-known.conf」を作成します。
cd /etc/httpd/conf.d/
nano well-known.conf次の設定を追加してください。
Alias /.well-known/acme-challenge/ "/var/lib/letsencrypt/.well-known/acme-challenge/"
<Directory "/var/lib/letsencrypt/">
AllowOverride None
Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
Require method GET POST OPTIONS
</Directory>「Ctrl+x」を押して、「y」と入力して保存して終了します。
4. 次に、httpd構成を確認し、httpdサービスを再起動するために次のコマンドを実行してください。
apachectl configtest
sudo systemctl restart httpdエラーがなければ、webrootプラグインを使ってSSL Letsencryptを生成する準備ができています。
5. SSL Letsencryptを生成する前に、ドメイン名がサーバーのIPアドレスに解決されていることを確認してください。その後、以下のcertbotコマンドを実行してwebrootプラグインを使用してSSL Letsencryptを生成できます。また、メールアドレスとドメイン名を自分のものに変更してください。
sudo certbot certonly --agree-tos --email [email --webroot -w /var/lib/letsencrypt/ -d domain.com -d www.domain.comプロセスが完了すると、あなたのSSL証明書は「/etc/letsencrypt/live/domain.com/」ディレクトリで利用可能になります。
WordPressの仮想ホストの設定
このステップでは、WordPress のために新しい Apache/httpd バーチャルホスト設定を追加します。
1. 作業ディレクトリを「/etc/httpd/conf.d」に変更し、新しい設定「wordpress.conf」をnanoエディタを使用して作成します。
cd /etc/httpd/conf.d/
nano wordpress.conf詳細なドメイン名とSSLパスディレクトリを自分のものに変更し、設定を「wordpress.conf」ファイルに貼り付けてください。
httpd port 80
<VirtualHost *:80>
ServerName domain.com
ServerAlias www.domain.com
# automatic redirect http to https
Redirect permanent / https://domain.com/
</VirtualHost>
httpd port 443/ssl
<VirtualHost *:443>
ServerName domain.com
ServerAlias www.domain.com
# WordPress path directory
DocumentRoot /var/www/wordpress
Protocols h2 http:/1.1
<If "%{HTTP_HOST} == 'www.domain.com'">
Redirect permanent / https://domain.com/
</If>
ErrorLog /var/log/httpd/domain.com-error.log
CustomLog /var/log/httpd/domain.com-access.log combined
SSLEngine On
SSLCertificateFile /etc/letsencrypt/live/domain.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/domain.com/privkey.pem
SSLCipherSuite EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH
SSLProtocol All -SSLv2 -SSLv3 -TLSv1 -TLSv1.1
SSLCompression off
<Directory /var/www/wordpress/>
Options FollowSymlinks
AllowOverride All
Require all granted
</Directory>
<Directory /var/www/wordpress/>
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*) index.php [PT,L]
</Directory>
</VirtualHost>「Ctrl+x」を押し、「Y」と入力して設定を保存して終了します。
3. 次に、httpdの設定を確認するために以下のコマンドを実行します。
sudo apachectl configtestエラーがなければ、以下のコマンドを使用してhttpdサービスを再起動してください。
sudo systemctl restart httpdこれで、ウェブブラウザを使ったWordPressのインストールの準備が整いました。
WordPressのインストール
すべての関連するサーバー設定が完了していれば、ウェブブラウザを使用してWordPressのインストールにアクセスできます。
1. ウェブブラウザを開き、あなたのWordPressインストールのURLアドレスを入力します。
http://domain.com
今、あなたは安全なHTTPS接続にリダイレクトされ、以下のページが表示されます。
WordPressのインストール用の言語を選択してください。デフォルトは「英語(アメリカ)」です。その後「続ける」をクリックしてください。
2. 今度はあなたの サイトタイトル を入力し、新しい ユーザー名、メールアドレス、および パスワード を入力してください。
次に「WordPressをインストール」ボタンをクリックしてインストールを開始してください。
3. インストールが完了すると、以下のページが表示されます。
続行するには「ログイン」ボタンをクリックしてください。
4. これからWordPressのログインページにリダイレクトされます。
ユーザー名とパスワードを入力し、「ログイン」をクリックしてください。
5. そして、デフォルトのWordPressインデックスページが表示されます。
6. カーソルを「マイブログ」メニューに移動し、「ダッシュボード」または「テーマ」をクリックすると、以下のようにWordPressの管理ダッシュボードが表示されます。
7. WordPress プラグインをインストールするには、カーソルを「プラグイン」メニューに移動し、「新規追加」をクリックします。そうすると、プラグインページにリダイレクトされます。
インストールしたいプラグインを選択し、「今すぐインストール」をクリックします。次に、「有効化」ボタンをクリックしてプラグインを有効化できます。
結論
おめでとうございます!あなたはRocky LinuxサーバーにLAMPスタックを使用してWordPress CMSを正常にインストールしました。このチュートリアルで学んだことは以下の通りです:
- LAMPスタックのインストール
- MariaDBのデプロイメントを確保する
- mysql/mariadbシェルからmysqlデータベースとユーザーを作成する
- certbotのwebrootプラグインのためのapache/httpdウェブサーバーの設定
- SSL Letsencryptを生成する
- そして最後はWordPressのインストールです。
次のステップでは、テーマを選択または購入し、それをWordPressにインストールできます。


















