サーバーの準備はOKですか?
見出しの通り、サーバーの準備はお済みでしょうか?
公開する、しないは別にしてもWordPressはphpというスクリプトで稼働するのでWebサーバーが必要です。このphpはサーバサイドスクリプトと呼ばれるもので、ApacheやNginxやLiteSpeedのようなWebサーバーがないと稼働しないんですね。ローカルで(自分のパソコン)試したい場合は仮想コンテナのDocker(ドッカー)や開発環境のXAMPP(ザンプ)などで環境を整えればOKです。DockerもXAMPPもLinuxにも構築できるので私はサーバーマシンで使いますが…それはさておいて。
でも、基本やさしい教科書的なお話をさせてもらうので、今回は単純にサーバーといったらレンタルサーバーだと考えてくださいね。(VPSサーバーを借りた場合はまずサーバー周りの話を見てください)
WordPressの動作環境をチェック
JP.WordPressのサイトには
と書かれています。レンタルサーバーならもちろん大丈夫だと思います。でも個人的にはphpは8.0以上。
MySQLよりはMariaDBを採用してほしいところ。
もちろん今時のレンタルサーバさんはしっかりこの水準は守ってくれてると思います。
ボタン一つで簡単インストールする前に
それを売りにしているレンタルサーバーは多いと思います。そもそもレンタル会社が利用するサーバー管理パネルにその機能がついているから。世界中の40%以上のWebがこのWordPressで稼働していると言われます。なので、この機能がついてたら便利なのは間違いありません。私が使っているVirtualminというWeb管理パネルも自動でやってくれます。
でもね、それに頼らなくても全然簡単! 更には一段セキュリティーも高めてインストールできるんです。そしてWordPressの設定ファイルというものを知っているだけでもなんとなくその後の自分のブログに愛着が湧くはず。自分の想いを反映させるブログです。ちょっとだけこだわって、セキュリティーもガチガチに固めて守りながら楽しくブログを始めましょう。
日本語でブログやるなら日本語版ワードプレスをダウンロード
ワールドワイド版を使っても日本語でインストールはできます。世界各国の言語で始められます。ただ、データベース等を設定する「wp-config.php」は日本語で丁寧に書かれている日本語版を使うととってもわかりやすいんです。
こういう日本語サポーターの方々の貢献って本当に素晴らしい。
なので、ぜひこの日本語版を使ってみてくださいね。2022/06現在の最新バージョンはv6です。
ダウンロードの直リンク貼らせてもらってます。ここクリックすると最新版がダウンロードされます。
任意のフォルダに展開(解凍)しましょう
ダウンロードされたwordpress-6.0-ja.zip(2022/06現在の最新バージョン)展開します(解凍と同じ意味)
zip版ならWindowsPCでもMacでも問題なくクリックすれば展開できますね。
もし、解凍ソフトが満足しなかったらこれを使ってみてください。いずれも私がお勧めする無料のアーカイブアプリです。
- Macなら The Unarchiver
- WindowsならLhaplus
展開したフォルダには3つのフォルダと16のファイルがありますね。
ここの『wp-config-sample.php』を『wp-config.php』と名前を変えます。そしてテキストエディタで編集しましょう。
その辺りのことは↓の記事に書いてます。ぜひ併せてご覧ください。
wp-config.phpをテキストエディタで編集
<?php
/**
* WordPress の基本設定
*
* このファイルは、インストール時に wp-config.php 作成ウィザードが利用します。
* ウィザードを介さずにこのファイルを "wp-config.php" という名前でコピーして
* 直接編集して値を入力してもかまいません。
*
* このファイルは、以下の設定を含みます。
*
* * データベース設定
* * 秘密鍵
* * データベーステーブル接頭辞
* * ABSPATH
*
* @link https://ja.wordpress.org/support/article/editing-wp-config-php/
*
* @package WordPress
*/
// 注意:
// Windows の "メモ帳" でこのファイルを編集しないでください !
// 問題なく使えるテキストエディタ
// (http://wpdocs.osdn.jp/%E7%94%A8%E8%AA%9E%E9%9B%86#.E3.83.86.E3.82.AD.E3.82.B9.E3.83.88.E3.82.A8.E3.83.87.E3.82.A3.E3.82.BF 参照)
// を使用し、必ず UTF-8 の BOM なし (UTF-8N) で保存してください。
// ** データベース設定 - この情報はホスティング先から入手してください。 ** //
/** WordPress のためのデータベース名 */
define( 'DB_NAME', 'database_name_here' );
/** データベースのユーザー名 */
define( 'DB_USER', 'username_here' );
/** データベースのパスワード */
define( 'DB_PASSWORD', 'password_here' );
/** データベースのホスト名 */
define( 'DB_HOST', 'localhost' );
/** データベースのテーブルを作成する際のデータベースの文字セット */
define( 'DB_CHARSET', 'utf8' );
/** データベースの照合順序 (ほとんどの場合変更する必要はありません) */
define( 'DB_COLLATE', '' );
/**#@+
* 認証用ユニークキー
*
* それぞれを異なるユニーク (一意) な文字列に変更してください。
* {@link https://api.wordpress.org/secret-key/1.1/salt/ WordPress.org の秘密鍵サービス} で自動生成することもできます。
* 後でいつでも変更して、既存のすべての cookie を無効にできます。これにより、すべてのユーザーを強制的に再ログインさせることになります。
*
* @since 2.6.0
*/
define( 'AUTH_KEY', 'put your unique phrase here' );
define( 'SECURE_AUTH_KEY', 'put your unique phrase here' );
define( 'LOGGED_IN_KEY', 'put your unique phrase here' );
define( 'NONCE_KEY', 'put your unique phrase here' );
define( 'AUTH_SALT', 'put your unique phrase here' );
define( 'SECURE_AUTH_SALT', 'put your unique phrase here' );
define( 'LOGGED_IN_SALT', 'put your unique phrase here' );
define( 'NONCE_SALT', 'put your unique phrase here' );
/**#@-*/
/**
* WordPress データベーステーブルの接頭辞
*
* それぞれにユニーク (一意) な接頭辞を与えることで一つのデータベースに複数の WordPress を
* インストールすることができます。半角英数字と下線のみを使用してください。
*/
$table_prefix = 'wp_';
/**
* 開発者へ: WordPress デバッグモード
*
* この値を true にすると、開発中に注意 (notice) を表示します。
* テーマおよびプラグインの開発者には、その開発環境においてこの WP_DEBUG を使用することを強く推奨します。
*
* その他のデバッグに利用できる定数についてはドキュメンテーションをご覧ください。
*
* @link https://ja.wordpress.org/support/article/debugging-in-wordpress/
*/
define( 'WP_DEBUG', false );
/* カスタム値は、この行と「編集が必要なのはここまでです」の行の間に追加してください。 */
/* 編集が必要なのはここまでです ! WordPress でのパブリッシングをお楽しみください。 */
/** Absolute path to the WordPress directory. */
if ( ! defined( 'ABSPATH' ) ) {
define( 'ABSPATH', __DIR__ . '/' );
}
/** Sets up WordPress vars and included files. */
require_once ABSPATH . 'wp-settings.php';
これ、全文デフォルトのまま掲載しています。
// 注意:
// Windows の "メモ帳" でこのファイルを編集しないでください !
// 問題なく使えるテキストエディタ
// (http://wpdocs.osdn.jp/%E7%94%A8%E8%AA%9E%E9%9B%86#.E3.83.86.E3.82.AD.E3.82.B9.E3.83.88.E3.82.A8.E3.83.87.E3.82.A3.E3.82.BF 参照)
// を使用し、必ず UTF-8 の BOM なし (UTF-8N) で保存してください。
21行目からの注意がまさに先ほど書いたメモ帳の利用を警告したものですね。
25行目にある『BOM』これがメモ帳につくんです。マイクロソフトのアプリはこういういちいちな仕様がほんと余計。パワポでも勝手に記号を2バイト文字に置き換えてしまったりと「する前にいちいち聞いてよ!」って思うことがたくさんあります。なので、ブラウザのEDGEも含めて初期に付属してきたものは乗り換えた方がいいんです(かなり強気で言ってますね)
それから、一般のテキストエディタでBOMなどが付くものはありませんから、この「BOMなし」という言葉を気にする必要がないかと。VS Codeなら安心安全に使えますよ(これもマイクロソフト社のものですけどね)
設定の必要事項をメモしましょう
/** WordPress のためのデータベース名 */
define( 'DB_NAME', 'database_name_here' );
/** データベースのユーザー名 */
define( 'DB_USER', 'username_here' );
/** データベースのパスワード */
define( 'DB_PASSWORD', 'password_here' );
編集するのは28行目からの3つの設定。
- データベース名
- ユーザ名
- パスワード
これは必ずレンタルサーバの管理パネルから確認できるはず。私の管理パネルのVirtualminはデータベース名とユーザ名は同じだったりしますけど、会社によっては仕様が違うかもしれませんから確認してメモをとりましょう。
これを’〇〇_here’に書き込めばOK PHPなのでくれぐれも’を消したり’を全角にしたりしないように。
そのほか。半角スペースならOKですが全角スペースはトラブります。ここだけはしっかり書きましょう。
/** WordPress のためのデータベース名 */
define( 'DB_NAME', 'momoswp2022' );
/** データベースのユーザー名 */
define( 'DB_USER', 'momoswp2022' );
/** データベースのパスワード */
define( 'DB_PASSWORD', '1zzYf37+UutLBs@33Bk3g4' );
こんな感じですね。ちなみに入力文字は全部デタラメに例として記述してます。
次に認証用ユニークキーの取得
/**#@+
* 認証用ユニークキー
*
* それぞれを異なるユニーク (一意) な文字列に変更してください。
* {@link https://api.wordpress.org/secret-key/1.1/salt/ WordPress.org の秘密鍵サービス} で自動生成することもできます。
* 後でいつでも変更して、既存のすべての cookie を無効にできます。これにより、すべてのユーザーを強制的に再ログインさせることになります。
*
* @since 2.6.0
*/
define( 'AUTH_KEY', 'put your unique phrase here' );
define( 'SECURE_AUTH_KEY', 'put your unique phrase here' );
define( 'LOGGED_IN_KEY', 'put your unique phrase here' );
define( 'NONCE_KEY', 'put your unique phrase here' );
define( 'AUTH_SALT', 'put your unique phrase here' );
define( 'SECURE_AUTH_SALT', 'put your unique phrase here' );
define( 'LOGGED_IN_SALT', 'put your unique phrase here' );
define( 'NONCE_SALT', 'put your unique phrase here' );
46行目からの認証用ユニークキーですね。
ここにある『ユニーク (一意) な文字列』 なんだかよくわからないでしょう?
これは、なんでもいいということ。ランダムに例えば「いろはにほへと」とかでも良いんです。でもそれも考えるのは面倒臭い…
なので、URLが書いてある
https://api.wordpress.org/secret-key/1.1/salt/
ここにアクセスしてランダムに作成してくれるユニークキーをそのまま貼り付けてOKにしましょう。
リロードするたびに新しいユニークキーを表示してくれます。
これ、またChromeで自動翻訳機能をONにしているといらぬところを全角にしたりしますので、必ず翻訳機能をOFFにしてコピーしましょうね。実際にそれで失敗して例がありました…(笑い話のような話ですが)
define('AUTH_KEY', 'r6f]1Csm-xh]y:?{+@g#e[!k~AZwayh1+DM ]DH-#|S]-GS|QvUt+3IKKd~`m$UO');
define('SECURE_AUTH_KEY', 'W>Z---ZlUvPdRLK_WYuaAQ|vy0KNVQd2/+%+A.gp$+OLNVy.+J=>z_/]5;(wwgXa');
define('LOGGED_IN_KEY', '%@/A=v0yAFW4-^bq|DLooOh,{K3I|~?e!;ByYJH)PMNw=pafY)?h[1c_~886$.~p');
define('NONCE_KEY', 'n}]DY^wp;aK.RBM[kPoCb.h0qEF0lol+cx`_ph,@]4uP<BC~5L+UzV)cubO{)6ev');
define('AUTH_SALT', '+1Wj$NR8<8GF1J_XKI~^yP3KdgFy~N6i75t6i.]e<G[73of8~J$Fby;>xJ&!5ha-');
define('SECURE_AUTH_SALT', 'fi{8{_J,_{ZzFS3oHl||C*mR(J<,drXh9IOF><zHf%qGbXj[(s,y(bj$!~b>U$Uj');
define('LOGGED_IN_SALT', 'QT?1491?a/Tt.S$lj3(R+Py:U(&IRs~b|7GrCY!MXq^2I#14;(;Mm+M67`N*a/xc');
define('NONCE_SALT', 'T-aaYC3BGB=}}9R3*COZNJM(BE(FeV=7{p0Tb<dIWz@3m+Z.5D}v2Kd,8_^}hqYT');
こんな感じ。
いよいよ1番大事な接頭辞の変更を
* WordPress データベーステーブルの接頭辞
*
* それぞれにユニーク (一意) な接頭辞を与えることで一つのデータベースに複数の WordPress を
* インストールすることができます。半角英数字と下線のみを使用してください。
*/
$table_prefix = 'momos2022_';
セキュリティー的にこれを一番やりたかったんです。そのために、いつもわざわざ手動インストールを選んでいます。
これは例ですのでみなさんがお好きなワードに変更してください。なお記号は”_”(アンダーバー)のみ使えるようです。
これを最後につけることでWordPressのテーブル名を確認しやすくなるので初期設定と同じように私はつけておきます。
はい、これで『wp-config.php』の編集は終わりです。
FTPソフトウエアで公開ディレクトリにアップロードしましょう
さて、サーバーへファイルをアップロードするためにはFTPソフトが必要です。FTPとはファイル・トランスファー・プロトコル(File Transfer Protocol)という専用の通信規格のネットワークアクセスです。しかし、昨今はこの暗号化されないプロトコルを使わずにSFTPと呼ばれるセキュアなプロトコルで通信させるのが主流ですね。いずれにしてもFTPソフトウエアが必要です。
Windows版ならWinSCPがお勧めですが文字コードの設定など設定をしないとファイル名の文字化けがあります(もう改善してますかね?)なので、技術者向けですね。
MacもWindowsでも使えるFilleZillaは初期設定がUTF-8なので初心者にはこれがお勧め。
余談ですがFilleZillaはゴジラの英国公開時の『Godzilla』にちなんだ名前だとか。
基本的なことですが、FTPでサーバーにアクセスするポートは通常21番です。ただ、平文で接速することは避けて最低でもFTPSで、可能ならSFTPで接続するようにしましょう。
サーバーへのアクセス方法
FilleZillaのインストールまでは『便利なTours』で別途ご紹介する予定です。無償で使えてファイル転送も速いですよ。
百聞ではこのFilleZillaを使って説明していきます。
ご自身が使い慣れているFTPソフトウエアで読み替えてくだされば大丈夫です。
レンタルサーバーを契約したときにFTPするためのユーザー情報を受け取っていますね? それを使ってアクセスします。
必要な情報はこれ
- FTPユーザー名
- パスワード
今の時代、FTPS(FTP over SSL/TLS)というセキュアな通信でのFTPを許していないレンタルサーバーはほとんどないと思いますが、利用者がその設定を怠ると同じポートで平文で(暗愚化されない文)アクセスしてしまいます。
FTPSのためには標準設定で990番ポートが開いているはずです。
FTPソフトウエアはFTPSを選択すれば自動でこのポートをめがけて通信を始めますので、ポート版後の設定は必要ありません。確実にFTPSで接続するよう強くお勧めします。
FilleZillでのアクセスならここ暗号化のプルダウンから『明示的なFTP over TLSが必要』としておきましょう。一度設定したアクセスは記憶されますから、一回の設定で今後も大丈夫。
公開ディレクトリを間違えないようにアップロード
ビギナーさんの多いトラブルの1番がこれです。
レンタルサーバ会社によってルート構造は違いますが、
/home/サーバーユーザー/public_html
この『public_html』が公開ディレクトリ(公開フォルダ)なので必ずこの中にアップロードしましょう。
ネットワークの回線速度によって3〜10分くらいかかるかもしれません。必ず3フォルダと16ファイル全てをアップロードしましす。詳細を以下に書いていきますね。
公開ディレクトリは空の状態かを確認して
ほとんどのFTPソフトウエアは公開ディレクトリに最初にアクセスします。
契約直後、試験的にサイトが確認できるようなindex.html が作成されているレンタルサーバーもあります。その場合は必ずこの『index.html』を削除してから始めます。
inxex.htmlをタップして右クリックから削除しましょう。他のFTPソフトウエアで右クリックにこの機能はあると思います。
WordPressの全ファイルと全ディレクトリをアップロード
公開ディレクトリが空の状態になってるのを確認して全てのファイルをアップロードします。右クリックからでも可能ですし、ドロップ&ドラッグで放り込んでもOK。
しばらく待ってアップロードが完了したら次はいよいよブラウザからインストールです。
ここでより一層のセキュリティーUPの一手間を
それでは、FT Pソフトを閉じる前に先ほど編集した『wp-config.php』のパーミッションを変更しておきましょう。
パーミッションというのは「アクセス権許可」ですね。大事なデータベースのパスワードが書かれています。そもそもPHPはサーバーサイドスクリプ他のため一般的にはこのファイルを覗かれることはありません。でも、オーナー(自分)だけしか読み書きできないようにさらに一層のセキュリティーを強化しましょう。
『wp-config.php』をタップして右クリックから「パーミッションの変更」を選択。
「644」→「600」に変更。OKを押します。
こんな感じに-rw-r–r– から -rw——- に変更になってればOKです。
ちなみにレンタルサーバーだともっと厳しい所有者の読み取りしか許可しない『400』のパーミッションを使えない場合が多いそうですね。可能ならもっと厳しい『400』でもOKです。
ブラウザで自分のサイトのURLに移動しましょう
百聞なら自分のサイトのURLは
https://momo-s.net/
です。
先ほど公開ディレクトリにアップロードした。その場合、自サイトのURLにアクセスすれば自動にインストールスクリプトが始まります。今回は日本語版WordPressを使用したので言語選択なしに次の設定画面が表示されます。
全てサンプルです。自分の環境に置き換えてくださいね。ユーザー名はログインだけに使う秘密の名前です。
インストール後に投稿時のハンドル名を追加で指定できますよ。なので、ここの例のような別個の名前でログインするのが絶対お勧め。パスワードは自動で頑強なものを作成してくれています。要するにこのくらいのパスワードは設定してねってことですね。
私は独自のものにしてますが、きっとみなさんが驚くような長い頑強なものを使ってます。
ここが出入り口。しっかり守りを固めておきましょうね。
では、WordPressをインストール ものボタンを押しましょう!
インストール完了
いかがですか? 無事表示されましたか?
自分でインストールすることで、『wp-config.php』という大事な設定ファイルのこともちょっと知識が増えましたね。そして、セキュリティーも一段上がってスタートできました。
サイトヘルスの確認
管理画面の左サイドバーから ツール >サイトヘルスにアクセスしてみましょう。
ここに書いてある通り、Twenty Twenty-Two 以外のテーマを削除しろと書いてあります。
WordPressはプラグインもテーマも利用せずともサーバーにあるだけで攻撃の対象にされるんですね。不必要なものを放置しないように最初に教えてくれています。
自分でFTPをしたおかげでFTPソフトウエアを利用して削除するのも簡単。
公開ディレクトリ内の/wp-content/themesにある「twentytwenty」と「wentytwentyone」をディレクトリごと(フォルダごと)削除すれば良いんです。
右クリックでこんな感じで削除しましょう。
にっこりマークが現れたら完璧!
他にPHPの〇〇が「インストールされていないか無効になってます」などとお知らせが出る場合はそのパッケージをサーバにインストールして対応せるんですけど。それはVPSサーバーを借りた場合の話。
もし、レンタルサーバーでこんなことがあったら…(今の時代ないと思うけど)さっさと別な契約に乗り換えましょう。自分ではどうしようもないと思うから。
では、これから楽しんでブログをスタートして行ってください。
百聞ではまだこの先も追加できるセキュリティーに関してお知らせしていきますね。
お疲れ様でした。