it-swarm-ja.com

Apache vhost.confのネイキッドドメインをwwwにリダイレクトします(SSLを使用)

フォーラムを検索しましたが、有効な解決策が見つからないようです。

私のメインサイトはhttpswww.domain.comです。

次のドメインもリダイレクトされます。

http www.domain.com http domain.com https domain.com

コメントから追加:

さて、私が今持っているのは、Apacheのvhost.confにある次のとおりです。

<VirtualHost :80> 
ServerName www.domain.com 
ServerAlias www.domain.com domain.com 
</VirtualHost> 

私の.htaccessには次のものがあります。

RewriteCond %{HTTP_Host} ^domain\.com 
RewriteRule ^(.)$ domain.com/$1 [R=permanent,L] 

見つからないエラーを表示するdomain.comを除いて、すべてが機能します。 SSLがCDNによってホストされていることを明確にするために、サーバー上でApacheはポート80でのみローカルに実行されます。 –ジェームズ1時間前

1
James

コメントからの情報に基づく新しい回答:

まず、vhost.confに1つのエラーがあります。 ServerNameとServerAliasの両方にwww.domain.comを含める必要はありません。エイリアスには、ServerName以外の仮想ホストに使用される他のすべての名前が一覧表示されます。したがって、これらの行は次のようになります。

ServerName www.domain.com 
ServerAlias domain.com 

また、仮想ホストには両方のホスト名があるため、ブラウザのアドレスバーのURLをdomain.comではなくwww.domain.comに変更する必要がない限り、書き換える必要はありません。


以下の元の回答

次のことを行う必要があります。

  • www.domain.comと同じ場所を指すようにdomain.comのDNSレコードを設定します
  • ポート80とポート443で応答するようにWebサーバーを設定します
  • domain.comがwww.domain.comと同じように扱われるようにWebサーバーを設定します。

これを行う方法についてさらにサポートが必要な場合は、これまでに行ったことを示し、具体的な質問をしてください。

3
Jenny D

検索エンジンに準拠するための最も簡単で最良の方法は、次の.htaccessです。

RewriteEngine on
RewriteCond %{HTTP_Host} ^domain\.com
RewriteRule ^(.*)$ http://www.domain.com$1 [R=permanent,L]

これにより、domain.comがwww.domain.comにリダイレクトされます。

Httpsを有効にするには、次のことを行う必要があります SSL用にApacheを設定

2
David Houde