WordPressは、世界のWebサイトの4分の1以上を支えている、最も人気のあるオープンソースのブログおよびCMSプラットフォームです。これはPHPとMySQLに基づいており、無料およびプレミアムのプラグインとテーマで拡張できる多数の機能を備えています。 WordPressは、オンラインストア、Webサイト、またはブログを作成する最も簡単な方法です。
このチュートリアルでは、Ubuntu18.04マシンにWordPressをインストールする方法を紹介します。これはかなり簡単なプロセスで、完了するのに10分もかかりません。
WebサーバーとしてNginx、SSL証明書、最新のPHP 7.2、データベースサーバーとしてMySQL/MariaDBを備えたLEMPスタックを使用します。
前提条件#
このチュートリアルを続行する前に、次の前提条件を満たしていることを確認してください。
- サーバーのパブリックIPを指すドメイン名があります。
example.com
を使用します 。 - sudo権限を持つユーザーとしてログインしています。
- 次の手順に従ってNginxをインストールしました。
- ドメインにインストールされているSSL証明書。次の手順に従って、無料のLet’sEncryptSSL証明書をインストールできます。
パッケージインデックスとシステムパッケージを最新バージョンに更新します:
sudo apt update
sudo apt upgrade
WordPressはMySQLデータベースを使用してすべてのデータを保存します。最初のステップは、MySQLデータベースとMySQLユーザーアカウントを作成し、データベースへのアクセスを許可することです。
UbuntuサーバーにMySQLまたはMariaDBがまだインストールされていない場合は、以下のいずれかの手順に従ってインストールできます。
- Ubuntu18.04にMySQLをインストールする
- Ubuntu18.04にMariaDBをインストールする
次のコマンドを入力してMySQLシェルにログインし、プロンプトが表示されたらパスワードを入力します。
mysql -u root -p
MySQLシェル内から、次のSQLステートメントを実行して、wordpress
という名前のデータベースを作成します。 、wordpressuser
という名前のユーザー 必要なすべての権限をユーザーに付与するには:
CREATE DATABASE wordpress CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
GRANT ALL ON wordpress.* TO 'wordpressuser'@'localhost' IDENTIFIED BY 'change-with-strong-password';
FLUSH PRIVILEGES;
EXIT;
上記のコマンドを実行すると、WordPressインスタンスで使用される新しいMySQLデータベースとユーザーアカウントが作成されます。
PHPのインストール#
Ubuntu18.04のデフォルトのPHPバージョンであるPHP7.2は完全にサポートされており、WordPressに推奨されています。
PHPおよび必要なすべてのPHP拡張機能をインストールするには、次のコマンドを実行します。
sudo apt install php7.2-cli php7.2-fpm php7.2-mysql php7.2-json php7.2-opcache php7.2-mbstring php7.2-xml php7.2-gd php7.2-curl
NginxをWebサーバーとして使用するため、PHP-FPMをインストールしました。
インストールプロセスが完了すると、PHP-FPMサービスが自動的に開始されます。
Wordpressのダウンロード#
Wordpressアーカイブをダウンロードする前に、まずWordPressファイルを保持するディレクトリを作成します。
sudo mkdir -p /var/www/html/example.com
次のステップは、次のwgetコマンドを使用してWordPressダウンロードページから最新バージョンのWordPressをダウンロードすることです。
cd /tmp
wget https://wordpress.org/latest.tar.gz
ダウンロードが完了したら、WordPressアーカイブを抽出し、抽出したファイルをドメインのドキュメントルートディレクトリに移動します。
tar xf latest.tar.gz
sudo mv /tmp/wordpress/* /var/www/html/example.com/
最後に、Webサーバーがサイトのファイルとディレクトリに完全にアクセスできるように、適切な権限を設定する必要があります。
NginxとPHPの両方がwww-data
として実行されているため ユーザーとグループ、正しい所有権を設定するには、次のchownコマンドを実行します。
sudo chown -R www-data: /var/www/html/example.com
Nginxの構成#
このチュートリアルの前提条件を確認しない場合は、これまでに、SSL証明書を使用したNginxがシステムにインストールされているはずです。
WordPressインスタンスの新しいサーバーブロックを作成するには、公式のNginxサイトのNginxレシピを使用します。
テキストエディタを開き、次のファイルを作成します。
/etc/nginx/sites-available/example.com# Redirect HTTP -> HTTPS
server {
listen 80;
server_name www.example.com example.com;
include snippets/letsencrypt.conf;
return 301 https://example.com$request_uri;
}
# Redirect WWW -> NON WWW
server {
listen 443 ssl http2;
server_name www.example.com;
ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem;
include snippets/ssl.conf;
return 301 https://example.com$request_uri;
}
server {
listen 443 ssl http2;
server_name example.com;
root /var/www/html/example.com;
index index.php;
# SSL parameters
ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem;
include snippets/ssl.conf;
include snippets/letsencrypt.conf;
# log files
access_log /var/log/nginx/example.com.access.log;
error_log /var/log/nginx/example.com.error.log;
location = /favicon.ico {
log_not_found off;
access_log off;
}
location = /robots.txt {
allow all;
log_not_found off;
access_log off;
}
location / {
try_files $uri $uri/ /index.php?$args;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php7.2-fpm.sock;
}
location ~* \.(js|css|png|jpg|jpeg|gif|ico|svg)$ {
expires max;
log_not_found off;
}
}
example.comをWordpressドメインに置き換え、SSL証明書ファイルへの正しいパスを設定することを忘れないでください。この構成で使用されるスニペットは、このガイドで作成されます。
sites-enabled
へのシンボリックリンクを作成して、サーバーブロックを有効にします ディレクトリ:
sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/
Nginxサービスを再起動する前に、構文エラーがないことを確認するためのテストを行います。
sudo nginx -t
エラーがない場合、出力は次のようになります。
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
次のように入力してNginxを再起動できます:
sudo systemctl restart nginx
WordPressのインストールを完了する#
Wordpressがダウンロードされ、サーバーの構成が完了したので、Webインターフェイスからインストールを完了できます。
ブラウザを開き、ドメインを入力すると、次のような画面が表示されます。
使用する言語を選択し、Continue
をクリックします ボタン。
次に、次の情報ページが表示されたら、Let's go!
をクリックします。 ボタン。
次の画面で、セットアップウィザードはデータベース接続の詳細を入力するように求めます。以前に作成したMySQLユーザーとデータベースの詳細を入力します。
Run the Installation
をクリックしてインストールを開始します ボタン。
次のステップでは、WordPressサイトの名前を入力し、ユーザー名を選択する必要があります(セキュリティ上の理由から、「admin」とは入力しないでください)。
インストーラーは自動的に強力なパスワードを生成します。このパスワードを保存することを忘れないでください。自分でパスワードを設定することもできます。
メールアドレスを入力し、検索エンジンがサイトのインデックスを作成しないようにするかどうかを選択します(非推奨)。
Install WordPress
をクリックします インストールが完了すると、WordPressがインストールされたことを通知するページが表示されます。 WordPressログインフォームにアクセスするには、Log in
をクリックします ボタン。
ユーザー名とパスワードを入力し、Log in
をクリックします ボタン。
ログインすると、WordPress管理ダッシュボードにリダイレクトされます。
ここから、新しいテーマとプラグインをインストールして、WordPressインストールのカスタマイズを開始できます。