本サイトではアフィリエイト広告を利用しています

Cygwin PC-UNIX Windows WordPress ソフトウェア 設定

Cygwin に WordPress を速攻セットアップする

2020年4月15日

Cygwin を使って WordPress を速攻セットアップする手順です。

設定環境


CYGWIN_NT-10.0 PC 3.1.4(0.340/5/3) 2020-02-19 08:49 x86_64 Cygwin
Apache/2.4.39 (Unix) May 1 2019 19:37:31
Server version: 10.3.14-MariaDB Source distribution
PHP 7.3.7 (cli) (built: Jul 21 2019 18:10:35) ( NTS )
WordPress 5.4 日本語版

Cygwin に Apache プラス PHP と MySQL(MariaDB)をセットアップし終えたら、WordPress が動くかどうか試してみることで、これら(httpd、データベース、PHP)すべてがうまく連携できているかを確認できます。
本ページでやることは、WordPress の公式サイトからソースをダウンロードしてきて展開するだけです。

WordPress をセットアップする

前提として、WordPress は "/srv/www/htdocs" 以下に展開します。ブラウザ上では localhost/wprdpress から wordPress にアクセスできるようにします。

ダウンロードツール wget の確認

必須ではありませんが、ダウンロードツール wget がインストールできているかどうかを確認します。

 cygwin
$ wget -V
GNU Wget 1.19.1 built on cygwin.
-cares +digest -gpgme +https +ipv6 +iri +large-file -metalink +nls
+ntlm +opie +psl +ssl/gnutls
(以下略)

"wget -V" とコマンドしてみて、バージョンが表示されたら wget がインストールされています。コマンドがないなどのエラーが起きる場合は、以下のパッケージを setup-x86_64.exe をダブルクリックしてインストールを行います。

Cygwin wget

WordPress をダウンロードする

Cygwin をコンソールで開き、カレントパスを "/srv/www" にします。そして、wget を使ってダウンロードします。
下の赤字の部分が、実際にに有力するコマンドです。

 cygwin
$ cd /srv/www/htdocs
$ wget https://ja.wordpress.org/latest-ja.tar.gz
--2020-04-15 11:19:30--  https://ja.wordpress.org/latest-ja.tar.gz
ja.wordpress.org (ja.wordpress.org) をDNSに問いあわせています... 198.143.164.252
ja.wordpress.org (ja.wordpress.org)|198.143.164.252|:443 に接続しています... 接続しました。
HTTP による接続要求を送信しました、応答を待っています... 200 OK
長さ: 12956022 (12M) [application/octet-stream]
latest-ja.tar.gz' に保存中
latest-ja.tar.gz       100%[============================>]  12.36M  4.30MB/s 時間 2.9s
2020-04-16 11:19:34 (4.30 MB/s) - latest-ja.tar.gz' へ保存完了 [12956022/12956022]
(以下略)

もし、Windows のダウンロードマネージャなどを使ってダウンロードする場合は
https://ja.wordpress.org/latest-ja.zip
からダウンロードしても問題ありません。

ダウンロードしたファイルを展開します。

 cygwin
$ tar xfz latest-ja.tar.gz
$ ls
latest-ja.tar.gz  wordpress
$ chmod 777 wordpress	#パーミッションを緩くする

ここまでで、現在 "/srv/www/htdocs/wordpress" (Windows 的には "C:\Cygwin64\srv\www\htdocs\wordpress")に解凍されています。

MySQL に WordPress で使うデータベースを作る

設定の一番初めに、どのデータベースを WordPress で使用するか決める必要があります。上の画面が表示される段階で、ほ WordPress と httpd、PHP の設定はほぼうまくいっているのですが、データベースの設定に関しては、まだわかりません。データベースにもアクセス権など、様々な使用制限がありますので、必要な権限を WordPress に与えていく必要があります。

正確には、WordPress は httpd が実行しますので、httpd(Apache)がデータベースにアクセスできることが必要条件になります。また、記事の削除等を含め、削除権限なども与える必要が出てきます。厳密には細かく設定できますが、動作チェックのため、ほぼセキュリティ無視のフルアクセスを httpd に与え、動作確認します。

データベースと httpd が起動していない場合は、以下のようにあらかじめコマンドします。

 cygwin
$ mysqld_safe --datadir='/var/lib/mysql'&
[1] 509
200416 11:33:08 mysqld_safe Logging to '/var/lib/mysql/Cubi.err'.
200416 11:33:09 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
$ /usr/sbin/httpd -k start

httpd(Apache)とMySQL(MariaDB)に特にエラーが出なければ次に進みます。

次に MySQL に WordPress で使うデータベースを作成し、さらにデータベースを操作するユーザーを作成し権限を与えます。今回はデーベース名を「testdb」、ユーザー名を「wpadmin」、データベース testdb に対して「all(すべての権限を与える)」の設定を行っています。具体的なコマンドは以下の通りです。

 cygwin
~(途中略)~
(以下略)
$ mysql -u root -p
Enter password:	(パスワードを入力します)
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 131
Server version: 10.3.14-MariaDB Source distribution
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]> create database testdb;
Query OK, 1 row affected (0.006 sec)
MariaDB [(none)]> create user 'wpadmin'@'localhost' identified by '12345678'; #'12345678' は今回設定したパスワードです。
Query OK, 0 rows affected (0.011 sec)
MariaDB [(none)]> grant all on testdb.* to 'wpadmin'@'localhost';
Query OK, 0 rows affected (0.011 sec)

上の赤字の部分が入力すべきコマンドです。
上の例ではパスワードを「12345678」に設定していますが、適切なパスワードにしていただいて問題ありません。
ここで設定したデータを、WordPress の設定で直接使いますので、メモしておきます。

メモ

データベース名 : testdb
ユーザー名 : wpadmin
パスワード : 12345678
ホスト名 : localhost

ブラウザからアクセスして、WordPress が動くかどうか確認する

次に、httpd がしっかり起動して、デフォルトの HTML ページが表示されるか確認します。
ブラウザを起動して、アドレス欄に "localhost" と入力して、"It works!" が表示されるかどうか確認します。

It works!

次にブラウザのアドレス欄に "localhost/wordpress" と入力して、WordPress の設定画面に入ることができるかどうか確認します。

ブラウザによってはGoogleなどの検索エンジンに飛ばされることがあります。その場合は 127.0.0.1/wordpress として入力します。

WordPress 設定画面

「さあ、始めましょう!」をクリックして設定を続けます。

WordPressにデータベースを設定する

WordPress 設定

先ほどメモした内容をそのまま入力して終わりです。

WordPress の初期エラーに対応する

OS や WordPress のバージョン如何によっては、エラーが出ることがあります。大抵は深刻なモノではありませんので、すぐに対処できます。よくあるのは、

  • ディレクトリに書き込み権限がなかった
  • データベースが起動していなかった
  • データベースを設定していなかった
  • httpd と データベースのユーザー権限が弱かった

あたりです。一つずつ潰せば、問題は無くなりますので、余裕を持って対処していきます。

データベース選択エラー

WordPress データベース 選択エラー

データベースには接続できたけれど、指定されたデータベースがない、アクセスする権限がない場合にこのエラーが起きます。Cygwin のデフォルトでこのエラーが起きる場合は、データベースを作成し忘れている場合、権限を付与し忘れている場合が大半です。
この場合は、phpMyAdmin でデータベースがしっかり作成できているか調べてみるのが手っ取り早く解決策を見つける方法になります。

データベース接続エラー

WordPress データベース 接続エラー

文字通りにこのエラーを読み解くと、データベースが起動していないなどのエラーが考えられますが、多くはデータベースを作成したユーザー名とパスワードを間違えて入力しているケースが大半です。
WordPress のパスワード、MySQL のパスワードは別扱いになるので注意してください。このページの例ではデータベース MySQL のパスワードは ( ID=root, パスワード=12345678 ) にしています。

[オマケ]wp-config.php を直接編集する

WordPress の設定ファイルは wp-config.php で、"/srv/www/htdocs/wordpress/wp-config.php" (Windows 的には "C:\Cygwin64\srv\www\htdocs\wordpress\wp-config.php")に作られます。で入れクトリに書き込み権限がないような場合は、そもそもファイルが生成されないので注意です。
イマイチ、設定ファイルが気に入らなかったりする場合は、同じフォルダ内の wp-config-sample.phpwp-config.php としてコピーして、中身を直接書き換えるような設定も可能です。

ここでは、オマケとして、WordPress のテスト環境として、メモリを有効に使えるようにパラメータを少し触ります。

wp-config.php の 50 行目あたり、「認証用ユニークキー」の上あたりに、空行を追加して、

 
define( 'WP_MEMORY_LIMIT', '256M' );

の行を追加します。
これは、WordPress のメモリの制限です。デフォルト値が少なすぎるので、増やしておきます。
動作の重めのテーマのテストのみならず、負荷のテストも行いにくくなりますので、256MB ぐらいは最低でも割り当てておくようにします。


関連記事
MySQL 設定
Cygwin で MySQL を速攻セットアップする

Cygwin に MySQL(MariaDB) をセットアップして実行する手順です。 MySQL を Cygwin でセ ...

続きを見る


関連記事
Cygwin
Windows に Cygwin をセットアップする入門編

Cygwin は Windows 上で Linux ディストリビューションと同様の機能が使えるようにする、オープンソース ...

続きを見る

-Cygwin, PC-UNIX, Windows, WordPress, ソフトウェア, 設定
-, , ,