今回は公開webサーバを作るにおいての最終章、Wordpressのインストール編をはじめます。ほかのサイトの通りにやったら普通に躓いたので、そちらを含めて紹介になります。
というか、WordPressのインストールの要件を考えたら、正直内容が似やすいのでその辺は勘弁してください。では設定していきます。書いてる通りにやればインストールができるはずです。
この記事の前に前段階としてやっておくべき記事を紹介しておきます。
では始めていきましょう。
目次
必要なパッケージのインストール
必要なパッケージをインストールします。依存関係もあるので、apt-get installを何回か打つことになります。焦って一つにまとめるとうまくいかないので要注意です。
以下のコマンドを入力します。
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install -y apache2
sudo apt-get install -y php mariadb-server
ここらへんまでは似たり寄ったりな感じになってます。一応軽くだけインストールしているパッケージの説明をしていきます。今後どんなに役割をしているか知っておくことで、知識の幅や対応力が変わってくると思うので。
「Apache2」はwebサーバを機能させてくれるソフトです。これをインストールするとwebブラウザからアクセスできる画面に表示したいものを表示できる機能です。文字で書かれてもよくわよくわからないと思うので、固定したIPアドレスをブラウザのURLを入れる欄に入力すると、Apache2 default Pageというのが出ると思います。簡単に言えばここに色々付け加えていけば、WordPressのサイトが完成するわけです。
「PHP」はwewbブラウザで使われるスクリプト言語のことをさします。プログラミング言語とは違うの?って聞かれますが、厳密にいえば全然違うものです。ご存じの方は当然だと思うかもしれませんね。ですが、何も知らない素人の方からするとよくわからないと思いますが、同じようなものだと思っていただいて大丈夫です。結局のところ、「人間にわかりやすい書き方でコンピュータやアプリケーションのふるまいを決める」という意味では、同じだと言い切っても問題ないからです。
本題に戻りますが、「PHP」そういったwebサーバで動くスクリプト言語なのですが何をしているかというと、WordPressを表示してくれているものだと思ってください。なのでPHPや、これに依存するパッケージに異常があるとWordPressがうまく動かないわけです。
最後に出てくるMariaDB-serverなのですが、これは、WordPressでデータを探したり、入れたりするのを行ってくれるツールだと思ってください。例えば、記事を100個ぐらい書いて、この中から特定のタグを含むものを抽出するときに「検索」をするわけですが、これをしてくれるのがmariadb-serverです。
各パッケージの説明はこれぐらいです。ほかのサイトを見ていると、あとはMariaDBの設定をして、次にWordPressのインストールみたいな流れなのですが、私と同じ過ちをしたくないのであれば、よく読んで下の手順にそってコマンドを実行してください。
そもそもここで何もせず続行すると何が問題なのかというと、WordPressのインストールが終わって色々弄り始めたときにエラーがあることに気づきます。結論からいうと必要なパッケージが足りていないのですが、一筋縄ではいかないので確認しながらいきます。
まず以下のコマンドを実行して、PHPのバージョンを確かめます。
php -v
するとこんな感じの結果が得られると思います。
PHP 7.3.19-1~deb10u1 (cli) (built: Jul 5 2020 06:46:45) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.3.19, Copyright (c) 1998-2018 Zend Technologies
with Zend OPcache v7.3.19-1~deb10u1, Copyright (c) 1999-2018, by Zend Technologies
この中で注目すべきは、「PHP 7.3.19」と書いてあるところです。これの2つ目までの数字、この場合は「7.3」を使います。
実は足りないパッケージが、バージョンの情報を必ず必要とするみたいのでこんな風に以下のパッケージをインストールしてください。ないとエラーが出て、インストールができません。しかも一部のパッケージがバージョン情報がないみたいなのですが、これは自動変換で勝手にインストールしてくれるのでこれを利用します。では私の場合は「7.3」を用いますが、それぞれの環境に合わせてこの数字は読み替えてください。
sudo apt-get install -y php7.3-xml php7.3-gd php7.3-curl php7.3-dom php7.3-mbstring php7.3-zip php7.3-imagick
どれかは「7.3」はいらないよーって言ってきますが、勝手に変換してくれるのでとりあえず全部読み替えて入力してください。これがインストールできればWordPressでの要らぬエラーを防げます。これを入れないとプラグインはインストールできないわ消せないわで大変な目にあいます。
あとは他のサイトと同じような流れを汲んでいきます。以下のコマンドを順番に入力していきます。ユーザー名、パスワードは好みで設定してください。その次の行ではそのユーザー名、パスワードを入れてコマンドを実行してください。後でも使います。
sudo mysql -u root -p
CREATE DATABASE wordpress;
GRANT ALL PRIVILEGES ON wordpress.* TO 'ユーザー名'@'localhost' IDENTIFIED BY 'パスワード';
GRANT ALL on wordpress.* TO 'ユーザー名'@'localhost' IDENTIFIED BY 'パスワード';
あとはできればしておきたい設定が以下の記事に書いているので、設定しておいたほうがいいです。しなくても動きはしますが。セキュリティ的にもよくないので。
では次はお待ちかねWordPressのインストールです。
WordPress本体のインストール
次にWordPress本体をダウンロードしてついにインストールをおこなっていきます。
cd /var/www/html
rm *
wget https://wordpress.org/latest.tar.gz
tar xvfz latest.tar.gz
mv wordpress/* .
rm -rf wordpress latest.tar.gz
cp wp-config-sample.php wp-config.php
ここでいったん再起動しておきましょう。
sudo reboot
さていよいよWordPressの設定です!
WordPressのホーム画面までのセットアップ
ブラウザを開いて、Raspberry PiのIPを直接入力します。「192.168.7.10」みたいな感じです。
開くとこんな感じの画面に飛ばされます。
ここで日本語を選択してContinueを選択。
次はこんな感じなので、黄色いマーカーのとこを押してください。
次の画像が気を付けるところになりますが、MySQLのところで後で使うから覚えておいてくださいといった、「ユーザー名」と「パスワード」を入力します。データベース名は「wordpress」で問題ありません。あとは何もいじらないで「送信です」
次の画像ではインストール実行です
次の画像では今後使っていくWordPressのログインに使うユーザー名やパスワードを設定します。MySQLのものとは別物です。メールアドレスはご自身のを入力したら、「WordPressのインストール」で必要な作業は終わりです。
これでWordPressのインストールは終わりです。長かったですが、お疲れ様でした。このサイトで用いているプラグインなどの紹介のリクエストなどがあれば記事にしますが、WordPressの細かい設定は他のサイトにおまかせします。あくまでwebサーバを立てるまでが取り扱いたい情報なので。
では次はWordPressをweb上に公開していきます。詳しくは以下の記事でポートフォワードという公開に必要な作業についての記事を公開していますのでご利用ください。次の記事は以下です。
いつも楽しく拝見しております。
今回本記事を参考にさせていただき、
ラズパイへWordpressのインストールを試してみましたがラズパイIPにアクセスすると「データベース接続確立エラー」と表示されてしまいます。
どういった原因が考えられますでしょうか?
コメントありがとうございます。
DB接続エラーのパターンは、WordpressからMariaDB等のDBにアクセスできていないことが原因で発生します。
なので、DBがそもそも起動していなかったり、落ちていたり、Wordpressの最初の設定が間違っていてDBを参照できない状態が考えられます。
迅速なご返答ありがとうございます。
ちょっと色々試してみます。
お世話になります、
先ごろMariaDBのサービス開始コマンドにてWordpressセットアップウィザードが無事表示されました!
ヒントをご教示いただきありがとうございました。
無事起動できたんですね!解決できたようで何よりです。
DBが立ち上がってなかっただけなら良いですが、起動後に落ちてる可能性もあるので、確認したほうが良いかもしれません。継続的に運用を続けるなら落ちないように対策を練ったほうが良いかもしれませんね。