2016-03-22 3 views
1

単一ページSSL証明書を持つドメインでサブドメインを書き直すことは可能ですか?単一ページを破ることなくサブドメインを書き直すSSL

私は何をしたい:

書き換えsubdomain.domain.comこれまでに得たものi've &ページ=サブドメイン

domain.com/index.phpする:

RewriteCond %{HTTP_HOST} ^(.*)\.domain\.com [NC] 
    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteRule ^(.*)$ /index.php?user=%1&req=$1 [L,QSA] 

私はサブドメイン証明書を持っていないので、これは私に悪いSSL証明書を与えます。 PHPの$ _SERVERの 使用のvar_dumpは、次の値を返します。

["SCRIPT_URI"]=> string(24) "https://subdomain.domain.com/" 
["HTTPS"]=> string(2) "on" 
["SSL_TLS_SNI"]=> string(15) "subdomain.domain.com" 
["SSL_SERVER_S_DN_CN"]=> string(14) "www.domain.com" 

だから、その、まだサブドメインとして渡す代わりに、それをリダイレクトします。

私は書き換えルールとして完全なドメインを使用する場合、それは動作しますが、そのもdomain.com/index.php?user=subdomainするタイトルバーにURLをchaning、代わりにURLを維持する:

RewriteRule ^(.*)$ https://domain.com/index.php?user=%1&req=$1 [L,QSA] 

サブドメインをdomain.com/index.php?user=subdomainに書き換えて、subdomain.domain.comを維持しながらも、1ページのSSL証明書を使用できるようにするにはどうすればよいですか?

+0

これはできません。 SSL証明書は 'domain.com'のみであり、' subdomain.domain.com'のための/ **ではなく**です。 –

+0

ワイルドカードSSLは唯一の解決策ですか? – anthom

+0

ワイルドカードSSL証明書または複数の主題別名SSL証明書。あるいは、Apacheに別の1ページのSSL証明書を提供させることもできます。 –

答えて

2

ウェブサーバーがサブドメイン(例:subdomain.domain.com)のウェブページを提供することはできませんが、domain.comでのみ有効な1ページのSSL証明書を保持することはできません。技術的には可能ですが、そうすることで、ブラウザが無効なSSL証明書をユーザに警告し、訪問者の間であなたのウェブサイトに不信を抱かせることになります。この問題を解決するには、いくつかのオプションが存在することになります:

  1. はメイク
  2. (古い/モバイルブラウザは、このような証明書の利用者に警告する場合があります)複数のサブジェクト代替名のSSL certifateを取得
  3. ワイルドカードSSL証明書を取得します。新しいapacheのバーチャルホスト設定と、いくつかのウェブサイト上で自由な1ページのSSL certifatesを得ることができるよう、ここで最良の選択肢は、3であるApacheは(あなたがsubdomain.domain.comのために取得する必要があります)別の1つのページのSSL証明書

を提供しましょうそれを使ってあなたの目的(例: StartSSL、LetsEncrypt)。新しいバーチャルホストの設定は難しくありません。ウェブサイトの既存のバーチャルホスト設定の大部分をコピーすることができます(SSL証明書、SSLキー、SSLチェーン、サイト名など) ...))。

関連する問題