-3

私のサイトに入るユーザーがwwwサブドメインに入ったかどうかを検出したいのですが、ほとんどの場合、www. 基本的に、ユーザーが入力した場合はmysite.comリダイレクトする必要がありますwww.mysite.comが、PHP のみでこれを検出する方法がわかりませんか? 私の$_SERVER配列にはそのような情報は含まれていません。これはまったく可能ですか?

4

2 に答える 2

2

mod rewriteを使用してこれを試すことができますApache(ファイルに入れ.htaccessます)

RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
于 2013-09-24T21:22:33.437 に答える
1

より悪い解決策は、PHP でそれを行うことです。

if (substr($_SERVER['SERVER_NAME'], 0, 4) !== 'www.') {
  header('Location: http://www.' . $_SERVER['SERVER_NAME']);
  exit();
}

パフォーマンスの観点から、.htaccess を使用したソリューションの方が優れています。

RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
于 2013-09-24T21:26:14.650 に答える