最終更新日: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.sqlMySQLのユーザーを作成する
MySQLにログインしたあと、先程作ったスキーマを操作できるユーザーを新規作成します。
mysql -u root -pcreate 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 stopLet's EncryptでSSL証明書を取得
sudo /opt/bitnami/letsencrypt/lego --tls --email="(任意のメールアドレス)" --domains="(任意のドメイン名)" --path="/opt/bitnami/letsencrypt" runsudo /opt/bitnami/letsencrypt/lego --tls --email="hoge@gmail.com" --domains="code.eaglet.jp" --path="/opt/bitnami/letsencrypt" runbitnamiを起動
sudo /opt/bitnami/ctlscript.sh start以上で手順は終わりです。
技術の進化についていけていないシステムエンジニア。浅く広く、何でも大体はこなせるエンジニアで重宝されてる(つもり)。でもやっぱり特化した武器欲しい。
 備忘録として記事を投稿していますが、少しでも誰かの助けになればと思います。
 最近はプロジェクトでReact(TypeScript )を触っています。
趣味でギター弾きます。