Nginx + WordPress マルチサイト機能を有効にする

<景品表示法に基づく表記> 本サイトのコンテンツには、商品プロモーションが含まれている場合があります。

wp-config.phpの修正

インストールしたディレクトリの直下にあるwp-ocnfig.phpを修正します。

# cd /usr/share/nginx/wordpress/
# vi wp-config.php

次のコメントがある直前に設定を追加します。


/** マルチサイト機能 */
define('WP_ALLOW_MULTISITE', true);

/* 編集が必要なのはここまでです ! WordPress でブログをお楽しみください。 */

wordpress管理画面の「ダッシュボード」-「 ツール」-「ネットワークの設置」にすすみます。プラグインの無効化が促されますので従い、インストールを実行します。インストール後に「wp-config.php」と「.htaccess」を修正するように促されます。

wp-config.phpの修正

先ほど追加した設定を変更します。

/** マルチサイト機能 */
define('WP_ALLOW_MULTISITE', true);
define('MULTISITE', true);
define('SUBDOMAIN_INSTALL', false);
define('DOMAIN_CURRENT_SITE', 'rin-ka.net');
define('PATH_CURRENT_SITE', '/');
define('SITE_ID_CURRENT_SITE', 1);
define('BLOG_ID_CURRENT_SITE', 1);

/* 編集が必要なのはここまでです ! WordPress でブログをお楽しみください。 */

nginxの設定変更

「.htaccess」はapacheの設定です。nginxの場合は設定ファイルを修正します。

# cd /etc/nginx/conf.d/
# vi rin-ka.conf
server {
  listen 80 default_server;
  server_name rin-ka.net;

  # wordpress パーマネントリンク設定
  try_files $uri $uri/ /index.php?$args;

  # 末尾に/を付ける
  rewrite /wp-admin$ $scheme://$host$uri/ permanent;

  # Pass uploaded files to wp-includes/ms-files.php
  rewrite /files/$ /index.php last;

  # Rewrite multisite '.../wp-.*' and '.../*.php'.
  if (!-e $request_filename) {
    rewrite ^/[_0-9a-zA-Z-]+(/wp-.*) $1 last;
    rewrite ^/[_0-9a-zA-Z-]+.*(/wp-admin/.*\.php)$ $1 last;
    rewrite ^/[_0-9a-zA-Z-]+(/.*\.php)$ $1 last;
  }
}

nginxの設定を反映

# systemctl reload nginx