http->httpsをリダイレクトしますが、サブドメインは除外します。

http->httpsをリダイレクトしますが、サブドメインは除外します。

私はDrupalを使用し、複雑なマルチドメイン設定を持ち、(ローカル)開発を使用するローカル開発サイトを持っています。サブドメイン。だから、本番と開発の両方で利用可能な.htaccessファイルが欲しいのです。

本番サイトはHTTPSを使用し、htaccessファイルにHTTP-> HTTPSリダイレクトがあります。 .devサブドメインの場合はhttpsにリダイレクトしないようにします。

<IfModule mod_rewrite.c>
  RewriteBase /

  # use website without "www."
  RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
  RewriteRule ^ http%{ENV:protossl}://%1%{REQUEST_URI} [L,R=301]

  # force HTTPS, but don't if on local development site
  RewriteCond %{HTTPS} !=on
  RewriteCond %{ENV:HTTPS} !=on
  RewriteCond %{HTTP_HOST} !^dev\.(.+)$ [NC]
  RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]
</IfModule>

しかし、これはうまくいかず、リダイレクトループを生成します。しかし、なぜそうなのか理解できません。どのようなヒントがありますか?

ベストアンサー1

おすすめ記事