ユーザー登録システムを備えたWebサイトを作成し、友人を招待しました。私は彼にno-www
バージョンのリンクを与えました:http://mydomain.com
ですが、今では this と this を読んだ後、www.mydomain.com
に移行したいと思います。 。
しかし、問題があります。ブラウザがmydomain.com
とwww.mydomain.com
の別々のパスワードを保存しているのを見ました。したがって、私の友人のブラウザでは、no-www
のパスワードが保存されている必要があります。つまり、www
に移行した後、ログインページを開くと、ブラウザはユーザー名とパスワードのフィールドを自動入力せず、(no-www
の)エントリも追加されます。ブラウザの保存されたパスワードのデータベース。
これは回避できますか? www.mydomain.com
とmydomain.com
が同じWebサイトであることをブラウザに伝えることができますか? www
のmydomain.com
を指すCNAMEレコードが既にありますが、検索エンジンはCNAMEをエイリアスと見なしますが、ブラウザはCNAMEを別のWebサイトと見なしているようです。理由はわかりません。
これはブラウザソフトウェアの制限であり、ウェブサイトの制限ではありません。ブラウザは完全一致URLのパスワードを保存します。つまり、www
サイトにアクセスすると、パスワードが保存されます。ほとんどのCookieベースのセッション。
www
の実施
URL変数にwww
を強制することにより、この問題の再発を防ぐことができます。つまり、www
なしでは誰もサイトにアクセスできなくなり、正しいアドレスにリダイレクトされます。つまり、保存されたパスワードとセッションベースのCookie問題を防ぐ正しいURLのためにのみ保存してください。
www
を強制する方法はたくさんありますが、これはmod_rewrite
でApacheを使用する一般的なソリューションの1つです。
SOURCE: 最も一般的に使用される基本的なApache htaccessリダイレクト
すべてをキャッチして、非wwwをwwwにリダイレクトする
$ 1変数はページ名をキャッチするため、サイトのwww以外のバージョンに対するすべてのリクエストのリダイレクトにmod_writeを使用することを選択する必要があります。したがって、example.com/page1 /は自動的にwww.example.com/page1/にリダイレクトします。
mod_rewrite:
RewriteEngine On RewriteCond %{HTTP_Host} !^www\. RewriteRule ^(.*)$ http://www.%{HTTP_Host}/$1 [R=301,L]
パスワードを保存した人
さらに問題が発生した場合は、サイトの訪問者に、使用しているブラウザ内に保存されているCookieとフォームをクリアするよう依頼する必要がある場合があります。