yotchang4s web

Google App EngineにWordPressを導入する(その2)

前回の記事、Google App EngineにWordPressを導入する(その1)ではGoogle App Engineの設定について説明をしました。次はいよいよWordPressの導入をしていきます。

GoogleAppEngineLauncherのインストール

WordPress導入の前にこの記事ではまだ必要では無いですが、今後GoogleAppEngineLauncherが必要なのでインストールしてしまいましょう。Python 2.7系が必要なので、インストールされていない場合は公式サイトからダウンロードしてきてインストールをして下さい。Python2.7系です。3系だと駄目なようです。何でだ!

Pythonが入っているか、バージョンの確認方法はコマンドプロンプトやターミナルで

python -V

と打てばバージョンが出てきます。

その後Google App Engine SDKのfor PHPをダウンロードしてインストールをします。

起動したらこんな感じになっているはずです。

GoogleAppEngineLauncher起動画面

はい。ここまでおざなりです。すいません。私はHomeBrewのCaskで

brew cask install googleappengine

としただけなので他の環境は合っているかわかりません。うまくいかないようであれば申し訳ありませんがググって下さい…

いよいよWordPressの導入

Google App Engineのアプリケションを管理したいディレクトリを作成して下さい。私は

/Users/yotchang4s/workspace/google-app-engine/test-wordpress

のように管理しています。 その中に最新のWordPressをダウンロードしてきて展開して配置します。

WordPressの展開

ここではtest-wordpressがGAEで管理するディレクトリとなります。以下test-wordpressがGAEのプロジェクトであるとして話を進めていきます。

test-wordpress直下にはお馴染みphp.ini、GAEのアプリケーション管理ファイルであるapp.yaml、cron.yamlを置いていきます。yamlは馴染みが無いかも知れませんが、設定ファイルによく使われる形式です。iniみたいなものです。

GAEプロジェクトの設定

実はすでにGoogleお手製?のWordPressプロジェクトがあるのですが、あくまで公式のWordPressを使いたいため、設定だけパクってきます。

php.iniapp.yamlcron.yaml、お馴染みwp-config.phpです。

このうち修正が必要なのはapp.yaml、wp-config.phpです。落としてきたらphp.ini、app.yaml、cron.yamlをtest-wordpress配下に置きます。wp-config.phpはwordpress配下に置いて下さい。

app.yamlの修正

application: your-project-id

前回の記事で作成した自分のプロジェクトIDに書き換えて下さい。また、GAEではアプリケーションのバージョン管理ができるようになっています。その設定が

version: wpfromstarterproject

です。私はwpfromstarterprojectの箇所をGAEにデプロイした日付にしています。例えば20150326です。

次に設定を見てみると

  • - url: /wp-admin/(.+)
  • - url: /wp-admin/
  • - url: /wp-login.php

securealwaysになっています。これは該当のURLのパターンに合致する物はSSLでないとアクセスできないようにする設定です。HTTPでアクセスしてもHTTPSに飛ばされます。GAEでSSLが使えるように設定しているのであればalwaysで良いのですが、していないと例えばhttp://example.com/wp-login.phpにアクセスするとhttpsに飛ばされてしまい、404になってしまいます。

もしSSLの設定をしていないのであればalwaysではなくneverにするか削除します。ただ、この場合セキュリティの観点から行ってあまりよろしくないため、慎重になってください。この設定をおすすめしているわけではありません。

wp-config.phpの設定

一つずつ設定をしていきます。まずはGoogle Cloud SQLの設定です。

define('DB_NAME', 'wordpress_db');

wordpress_dbの箇所を前回の記事で作成したDBの名前にして下さい。インスタンス名では無いです。次は

define('DB_HOST', ':/cloudsql/your-project-id:wordpress');

your-project-idの箇所に自分のプロジェクトIDを、wordpressの箇所にインスタンス名を設定して下さい。次は


define('DB_CHARSET', 'utf8');
define('DB_COLLATE', '');

の箇所を設定した値、例えばutf8mb4等にして下さい。次はsaltの設定です。


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');

'put your unique phrase here'を変えます。saltの生成をしてくれる公式サイトがあるので、この値を使うのがいいでしょう。

以上でGAE上で動かす準備が整いました。しかし、まだやることがあります。ローカルでの確認方法、デプロイ方法、ファイルを扱えないGAEでのプラグインやテーマの導入方法、そして運用方法等です。

今回は駆け足で短かったですが、次回はデプロイまでを説明できたらと思います。

Categories: プログラミング

Ninja Frameworkを軽く触ってみた » « Google App EngineにWordPressを導入する(その1)

2 Comments

  1. 続きが読みたいです!

    • yotchang4s

      2015年9月14日 — 11:33 PM

      続きを書きたいんですがWordPress本体のアップデートがうまく動いて無くて毎回総入れ替えしてるんですよね。うまく行くようになったら続きを書ければと思います。

コメントを残す

Your email address will not be published.

Copyright © 2017 yotchang4s web

Theme by Anders NorenUp ↑