私は私のWordPress MultiSiteインストールですべての非wwwからwww URLにリダイレクトしようとしています。私はこのような単純な.htaccess
ルールを使っています:
# Redirect non-www to www:
RewriteCond %{HTTP_Host} !^www\. [NC]
RewriteRule ^(.*)$ http://www.%{HTTP_Host}/$1 [R=301,L]
通常はこれでうまくいきますが、WordPressはすでにwww以外のURLへのデフォルトのリダイレクトを持っているようです。これは私がそのRewriteRule
を使うとき、それが無限のリダイレクトループを引き起こすことを意味します。
どうすればこれを無効にできますか?
PS。 wp-config.php
でdefine('NOBLOGREDIRECT', 'http://www.domain.com');
を試しても効果がありません。
回答:無効にしないでください。必要なリダイレクトをするために使用してください。
あなたがサブドメインのインストールをしているのなら、あなたはまったくこれを行うことができません、wwwはサブドメインです。
サブディレクトリをインストールしていて、すべてのサイトをwwwにしたい場合は、wp-config.phpを編集してDOMAIN_CURRENT_SITEをwwwドメインに変更します。
ドメインマッピングを使用している場合は、ドメインマッピングプラグインを使用して、ドメインがwwwを含むように変更します。
後者の2つの場合、重要なのは、リダイレクトを行うために.htaccessを使用していないことです。URLが想定されているとおりにWordPressにリダイレクトさせることです。
管理者にログインし、一般設定に移動して確認してください
WordPressアドレス(URL)およびサイトアドレス(URL)テキストボックスを確認してください。たぶんここでURLはwwwなしで保存されているので、WordPress Address(URL)とSite Address(URL)の両方にwwwをあなたのドメイン名の前に追加します。
これがお役に立てば幸いです。ではごきげんよう ;)