WordPressで構築したサイトでwwwなしで構築していたんですが、www付だと別のページが表示されていました。
下記のような構造で、wwwなしだと/wp/以下に設置したWordPressのページが、www付だとルートディレクトリのページが表示されていました。
/index.html /* ルートディレクトリのページ */
/wp/ /* WordPressページ */
サーバー設定では、ドメインをwpディレクトリに設定しています。
WordPress管理画面の一般設定「WordPressのアドレス」「サイトアドレス」にwwwなしのURL「https://ドメイン名.com」を指定します。
ルートディレクトリの.htaccessに下記を記入してwwwなしにリダイレクトします。
Options +FollowSymLinks RewriteEngine on RewriteCond %{HTTP_HOST} ^(ドメイン名\.com)(:80)? [NC,OR] RewriteCond %{HTTP_HOST} ^(www\.ドメイン名\.com)(:80)? [NC] RewriteRule ^(.*)$ https://ドメイン名.com/$1 [R=301,L]
wpディレクトリには下記を記入します。
<IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{HTTPS} off RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L] </IfModule> # BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule> # END WordPress
これでwww付のページがwwwなし&httpsにリダイレクトされるようになりました。