windowsにnginx+MySQL+PHPを導入~WordPress引越

RaspberryPi2でLNMP環境動かしていたのですが、、、

  • やっぱりそれなりに遅い
  • 結構落ちる(panicになる)
  • 別途持っているRaspberryPiBでVolumioがまともに動かない

という問題が出てきました。
RaspberryPi3を買うことも考えたのですが、ちょっとお財布が厳しい。
結局

  1. WordPress環境をWindowsサーバーに移す
  2. motionとtemperをRaspberriPiBに移す
  3. VolumioをRasperriPi2に移す

とすることにしました。
色々やってRaspberryPi2サーバー立ち上げたのに、我慢できないダメな私。

Windowsでの導入

MySQLの導入

MySQLのサイトからインストーラーをダウンロードして実行するだけ。
特にツール群は不要なので「ServerONLY」を選んでインストール

nginx

nginxのサイトからWindows用パッケージをダウンロードして解凍。
ファイルは「Stable version」を選択

conf/nginx.confを編集
Windows特有の設定事項は特になし
FAST-CGIの設定はSOCKETではなくTCP(PORT)で記述すること

fastcgi_pass    127.0.0.1:9000;

設定内容の参考

速度を求めて、、、 RaspberryPiでWordPress立ち上げまでは来たけど何となくまだ遅い。 Nginxの高速化を試してみる。 ...

PHP

PHPのサイトからWindows用パッケージをダウンロードして解凍。

php.iniを編集。

以下の「Windows Extensions」を有効化

  • extension=php_curl.dll
  • extension=php_gd2.dll
  • extension=php_mbstring.dll
  • extension=php_mysql.dll
  • extension=php_mysqli.dll
  • extension=php_openssl.dll

wordpress更新時のタイムアウト対策として以下の値を増加

max_execution_time = 120

extensionフォルダを指定

extension_dir = "ext"

上記のRaspberryPiの設定を参考にOPcacheを有効にする
また、DLL参照の追加設定が必要
(※ ACPUは今回は一旦保留)

zend_extension=php_opcache.dll

PHP_FCGI_MAX_REQUESTS で設定されている要求回数分を処理すると終了する仕様なので無制限に変更。
WindowsOSの環境変数に

変数名:PHP_FCGI_MAX_REQUESTS
値:0

を設定

データの引っ越し

WordPress

フォルダを丸ごとコピーするだけ

DB

バックアップ
コマンドラインから以下実行

mysqldump --single-transaction -uroot -pパスワード DB名 > 出力先ファイル名

復元

SQLにログイン
データベース作成・指定
バックアップSQLの実行

mysql -uroot -pパスワード
create database hogehoge;
use hogehoge;
source 出力したファイル名;

実行

nginx.exe
php-cgi.exe -b 127.0.0.1:9000

バッチスクリプト作ってスタートアップに登録しておく予定