最終更新日:2021‐05-23
Contents
はじめに
gcpの「wordpress with nginx and ssl certified by bitnami」でwordpressを立ち上げたときにマルチドメインに対応する手順をメモしておきます。
上記のテンプレートを使用するとすぐにWordpressが使用できる状態なので、そのままスキーマとディレクトリをコピーして使います。
MySQLでスキーマをコピー
自分のホームディレクトリで実行します。
MySQLのrootユーザーのパスワードは、GCPの「VM インスタンスの詳細」ページに記載してある「bitnami-base-password」の部分です
mysqldump -u root -p bitnami_wordpress > bitnami_wordpress.dump.sql
mysqladmin -u root -p create bitnami_wp_newdb
mysql -u root -p bitnami_wp_newdb < bitnami_wordpress.dump.sql
MySQLのユーザーを作成する
MySQLにログインしたあと、先程作ったスキーマを操作できるユーザーを新規作成します。
mysql -u root -p
create user 'wp_admin'@'localhost' identified by '****(任意のパスワード)****';
grant all on bitnami_wp_newdb.* to 'wp_admin'@'localhost';
WordPressのディレクトリをまるっとコピー
cd /opt/bitnami/apps/wordpress
sudo cp -rp htdocs/ hogefuga1.jp/
wp-config.phpを編集する
// ** MySQL settings - You can get this info from your web host ** //
/** The name of the database for WordPress */
define( 'DB_NAME', 'bitnami_wp_newdb' );
/** MySQL database username(作成下MySQLのユーザー名を設定) */
define( 'DB_USER', 'wp_admin' );
/** MySQL database password(作成したMySQLユーザーのパスワードを設定) */
define( 'DB_PASSWORD', 'password' );
bitnami用のnginxの設定ファイルを修正する
sudo vi /opt/bitnami/nginx/conf/bitnami/bitnami-apps-vhosts.conf
####################
# hogefuga1.jp
####################
server {
listen 80 ;
server_name hogefuga1.jp www.hogefuga1.jp;
client_max_body_size 20M;
return 301 https://hogefuga1.jp$request_uri;
}
server {
listen 443 ssl http2;
ssl_protocols TLSv1.2 TLSv1.3;
root "/opt/bitnami/apps/wordpress/htdocs";
server_name hogefuga1.jp www.hogefuga1.jp;
ssl_certificate "/opt/bitnami/letsencrypt/certificates/hogefuga1.jp.crt";
ssl_certificate_key "/opt/bitnami/letsencrypt/certificates/hogefuga1.jp.key";
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 5m;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on;
include "/opt/bitnami/apps/wordpress/conf/nginx-app.conf";
}
####################
# hogefuga2.jp
####################
server {
listen 80 ;
server_name hogefuga2.jp www.hogefuga2.jp;
client_max_body_size 20M;
return 301 https://hogefuga2.jp$request_uri;
}
server {
listen 443 ssl http2;
ssl_protocols TLSv1.2 TLSv1.3;
root "/opt/bitnami/apps/wordpress/hogefuga2.jp";
server_name hogefuga2.jp www.hogefuga2.jp;
ssl_certificate "/opt/bitnami/letsencrypt/certificates/hogefuga2.jp.crt";
ssl_certificate_key "/opt/bitnami/letsencrypt/certificates/hogefuga2.jp.key";
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 5m;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on;
include "/opt/bitnami/apps/wordpress/conf/nginx-app.conf";
}
bitnamiの関連ソフトウェアをまとめて停止
sudo /opt/bitnami/ctlscript.sh stop
Let's EncryptでSSL証明書を取得
sudo /opt/bitnami/letsencrypt/lego --tls --email="(任意のメールアドレス)" --domains="(任意のドメイン名)" --path="/opt/bitnami/letsencrypt" run
sudo /opt/bitnami/letsencrypt/lego --tls --email="hoge@gmail.com" --domains="code.eaglet.jp" --path="/opt/bitnami/letsencrypt" run
bitnamiを起動
sudo /opt/bitnami/ctlscript.sh start
以上で手順は終わりです。
技術の進化についていけていないシステムエンジニア。浅く広く、何でも大体はこなせるエンジニアで重宝されてる(つもり)。でもやっぱり特化した武器欲しい。
備忘録として記事を投稿していますが、少しでも誰かの助けになればと思います。
最近はプロジェクトでReact(TypeScript )を触っています。
趣味でギター弾きます。