Xサーバーなどのレンタルサーバーで作成したWordPressサイトを常時SSL化(HTTPS化)し、wwwのあり・なしを統一することで、同じページやコンテンツが複数のURLで表示されることを防ぐための設定方法をご紹介します。WordPressの一般設定に加え、サーバーの.htaccessに301リダイレクトのコードを記述する方法についても解説します。
なお、エックスサーバーでは2025年3月11日から、サーバーパネルの「ドメイン設定」に「www転送設定」と「HTTPS転送設定」が追加され、従来のように.htaccessを直接編集しなくても、wwwのあり・なしの統一や常時SSL化を簡単に設定できるようになりました。
現在はサーバーパネルから設定する方法が便利ですが、この記事では、これらの転送機能を使用しない場合や、.htaccessでリダイレクトを管理したい場合の設定方法もご紹介しています。
WordPressの常時SSL化とwwwあり・なしを統一する301リダイレクト設定
※example.comの部分は運用しているウェブサイトのドメインに書き換えて下さい。
エックスサーバーでWordPressサイトを作成し、独自SSLを設定しただけでは、必ずしもHTTPからHTTPSへの自動転送が行われるわけではありません。また、wwwのあり・なしについても、設定によっては同じページに複数のURLからアクセスできる状態になります。
例えば、https://example.comを正規URLとして運用する場合、次の4つのURLが存在することになります。
・http://example.com
・http://www.example.com
・https://example.com
・https://www.example.com
これらのURLから同じページを表示できる状態になっていると、検索エンジンが複数のURLを認識することになり、重複コンテンツの処理や正規URLの判定が必要になります。
Googleは重複するページを自動的に判定して代表となるURLを選択する仕組みを持っていますが、検索エンジンに正規URLを明確に伝え、SEO評価の分散を避けるためにも、301リダイレクトを利用してURLを統一しておくことが重要です。
今回の設定では、http://example.com・http://www.example.com・https://www.example.comの3つのURLから、正規URLであるhttps://example.comへ転送するように設定します。
エックスサーバーの場合は、サーバーパネルにログインして「ドメイン設定」から対象ドメインの「詳細」を開き、「www転送設定」でwwwなしへの転送を選択するとともに、「HTTPS転送設定」で「HTTPSに転送する」を有効にすることで、同様のURL統一が可能です。
ただし、HTTPSへの転送を有効にするには、あらかじめ対象ドメインにSSL証明書が設定されている必要があります。また、www付きのHTTPS URLからも正常に転送できるように、wwwあり・なしの両方で証明書エラーが発生しないことを確認しておきます。
サーバーパネルの転送機能を利用する場合は、同じ目的のリダイレクトコードを.htaccessに重複して追加する必要はありません。すでに手動で設定している場合は、既存の転送ルールとの競合にも注意が必要です。
一方、これらの転送機能を使用せず、.htaccessに直接コードを記述して設定する場合は、WordPress側の設定とサーバー側の設定を変更することになるため、万が一に備えてバックアップを取ってから作業を行うようにして下さい。
ワードプレスアドレスとサイトアドレスの設定
.htaccessにコードを記述する前に、WordPressの管理画面にある「設定」から「一般」を開き、WordPressアドレスとサイトアドレスを、http://example.comからhttps://example.comに書き換えておきます。
ただし、この変更は対象ドメインのSSL証明書が有効になり、HTTPSで正常にアクセスできることを確認してから行って下さい。SSL設定が完了していない状態でURLを変更すると、WordPressの管理画面にログインできなくなったり、サイトにアクセスできなくなったりする恐れがあります。
なお、WordPress本体をサブディレクトリにインストールしている場合は、WordPressアドレスとサイトアドレスが異なることもあるため、既存のディレクトリ構成を維持したまま、必要な部分をHTTPSに変更します。
メインのポートフォリオサイトのURLを、WordPressの一般設定でhttp://japan-videography.comからhttps://japan-videography.comに書き換えを行いました。
.htaccessでHTTPSのwwwなしに301リダイレクトする設定
WordPressアドレスとサイトアドレスを常時SSL化したURLに書き換えても、サーバー側でHTTPからHTTPSへの転送やwwwのあり・なしを統一する設定が行われていなければ、複数のURLからアクセスできる状態が残ることがあります。
エックスサーバーでは、前述したサーバーパネルの「www転送設定」と「HTTPS転送設定」を利用することで簡単に統一できますが、これらの機能を使用しない場合は、.htaccessに301リダイレクトのコードを記述してhttps://example.comに統一することも可能です。
Xサーバーであれば、サーバーパネルの「.htaccess編集」画面を開き、対象ドメインの設定内容を確認して、下記コードを既存のWordPressのリライトルールよりも上に追記します。
RewriteEngine On# HTTPまたはwwwありのURLをHTTPSのwwwなしに301転送
RewriteCond %{HTTP_HOST} ^(www\.)?example\.com$ [NC] RewriteCond %{HTTPS} !=on [OR] RewriteCond %{HTTP_HOST} ^www\.example\.com$ [NC] RewriteRule ^(.*)$ https://example.com/$1 [R=301,L]
</IfModule>
このコードでは、最初のRewriteCondで対象となるドメインをexample.comとwww.example.comに限定し、続く条件でHTTPS以外のアクセス、またはwww付きURLからのアクセスを判定しています。
いずれかの条件に該当した場合は、RewriteRuleによってhttps://example.comへ301リダイレクトされるため、HTTP・HTTPSとwwwのあり・なしを組み合わせた4種類のURLを、1つの正規URLに統一することができます。
また、すでにhttps://example.comでアクセスしている場合は転送処理が行われないため、同じURLへのリダイレクトが繰り返されることもありません。
このように、.htaccessの先頭付近にコードを追加することで、対象ドメインへのアクセスをwwwなしのHTTPS URLに統一できます。
ただし、既存の.htaccessに記述されているWordPressの設定や、そのほかのリダイレクト、アクセス制御などのコードは削除せず、設定内容が競合しないように注意して下さい。
ポートフォリオサイトに設定しているメインのドメインであれば、http://japan-videography.com・http://www.japan-videography.com・https://www.japan-videography.comのどれからアクセスしても、https://japan-videography.comに301リダイレクトされる設定になります。
また、下層ページについても元のディレクトリやURLのパスを維持したまま転送されるため、例えばhttp://japan-videography.com/shiroishi2024/のページにアクセスした場合は、https://japan-videography.com/shiroishi2024/へ301リダイレクトされます。
この設定では、URLに付与されているクエリ文字列も基本的に引き継がれるため、トップページだけでなく、WordPressの個別記事や固定ページなども同じ仕組みで正規URLへ転送できます。
設定後は、HTTP・HTTPSとwwwのあり・なしを組み合わせた4種類のURLで実際にアクセスし、正規URLに転送されることを確認して下さい。ブラウザに301リダイレクトの情報が記憶される場合もあるため、変更が反映されない場合は、別のブラウザやシークレットモードで確認するとよいでしょう。
なお、この設定はwwwのあり・なしとHTTP・HTTPSを統一するものであり、異なるディレクトリやサブドメインを別のURLへ移転するための設定ではありません。サブドメインを別サイトとして運用している場合などは、その構成に合わせた個別の設定が必要になります。








この記事へのコメントはありません。