2017-12-20 31 views
0

-solutionsの数は無制限ですが、どれもhttpswwwにリダイレクトされません。メインドメインのみで、httpsにはサブドメインに対してはwwwがありません。 php経由の解決でthis質問に基づいて、今私は.htaccess-ファイルを次の必要性を満たすように変更したいと思います。 (メインドメインの:wwwが望まれると表示されるはず)www .htaccess:メインドメインをhttps:// www、サブドメインにリダイレクトして、https://(wwwは表示されません)

  • から

    • リダイレクトhttpリダイレクトnon-www
    • httpsに:

      メインドメイン

    サブドメイン:

    • リダイレクトhttpリダイレクトwwwhttps
    • からnon-www
    • に(サブドメインのために:wwwが所望とないが表示されない)

    私の現在のアプローチは、以下のようになります。

    RewriteEngine on 
    
    # Ensure https for all domains (main- and subdomains): 
    RewriteCond %{HTTPS} off 
    RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L] 
    
    # Redirect non-www to www only for main domain, but not for subdomains: 
    RewriteCond %{HTTP_HOST} ^(domain\.com)$ [NC] 
    RewriteRule^https://www.%1%{REQUEST_URI} [R=301,L] 
    
    # Redirect www to non-www only for subdomains: 
    RewriteCond %{HTTP_HOST} ^(www\.)?subdomain\.domain\.com$ [NC] 
    RewriteCond %{HTTP_HOST} ^www\. [NC] 
    RewriteRule^https://subdomain.domain.com%{REQUEST_URI} [R=301,L,NE] 
    

    • 私は思うのサブドメインを持ついくつかのエラーが発生しているのですか?
    • 最初のコマンドにRewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}という部分はありません。httpsを付けずにサブドメインに入ると、このコマンドは訪問者をメインドメインに送りませんか?または、{HTTP_HOST}にはすでにサブドメインが含まれていますか?

    コメント:サブドメインがメインドメインとは完全に異なるコンテンツを有している(private.website.com又はcloud.website.com例えばすることができます)。それは単に別の言語ではありません。このため、ブラウザベースまたはCMS経由で内部転送を作成することは有効ではないようです。これは、.htaccess - エントリのみを介して実行する必要があります。ルールはサブドメイン部分が重複している

  • 答えて

    1

    、あなたはこれに変更してください:これらの規則については

    RewriteCond %{HTTP_HOST} ^www\.subdomain\.domain\.com$ [NC] 
    RewriteRule^https://subdomain.domain.com%{REQUEST_URI} [R=301,L,NE] 
    

    を:

    RewriteCond %{HTTPS} off 
    RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L] 
    

    1行目:HTTPSがオフ

    2行目であれば:任意のパターンに対して、ユーザをhttps://%{HTTP_HOST}%{REQUEST_URI}に永久にリダイレクトします。 %{HTTP_HOST}HTTP request headerから取得され、ユーザが要求domain.com、この要求subdomain.domain.comがなされる一方%{HTTP_HOST}は、domain.comある、%{HTTP_HOST}次いでsubdomain.domain.com

    あるした場合
    関連する問題