2

私はネットとSOを精査してきましたが、この問題を回避または解決できません。

たくさんのサブドメインといくつかの専用サーバーがあります。1 つのサーバーで、問題の追跡とランディング ページとしての 2 倍、3 倍の役割を果たします。問題は、ワイルドカード ランディング ページが正しい仮想ホスト ページに移動しない場合があることです。私はワイルドカードを見てきましたが、それらは特に広いようです。

シナリオは次のとおりです。

- www.askia.comがメインのランディング サイトです。存在しない (ワイルドカード) サブドメインは、常にここに配置する必要があります。
- dev.askia.comは、テクニカル サポートおよび問題のサイトです。https 用の mod_rewrites がいくつかあります。しばらく時間がかかりましたが、動作するようになりました。壊れたくありません。
- www.askia.frはフランスのサイトです。www.askia.comに移動する代わりに、dev.askia.com に移動します。
- www.askia.co.ukは www.askia.com に移動するはずですが、dev.askia.comに移動します

どこで解決策を修正しようとすべきか完全にはわかりません。CNAMEで何かをする必要がありますか。virtualhosts 構成ファイルまたは mod_rewrite ファイル内。

4

2 に答える 2

1

次のルールを試してください。

RewriteCond %{HTTP_HOST} ^dev\.
RewriteCond %{HTTP_HOST} !^dev\.askia\.com$
RewriteRule ^ http://dev.askia.com%{REQUEST_URI} [L,R=301]

RewriteCond %{HTTP_HOST} !^www\.askia\.com$
RewriteCond %{HTTP_HOST} !^dev\.askia\.com$
RewriteRule ^ http://www.askia.com%{REQUEST_URI} [L,R=301]

最初のルールは、すべてのリクエストをで始まるが、でdev.はないホストにリダイレクトdev.askia.comwww.askia.comます。www.askia.comそして、2番目のルールは、リクエストをと以外のホストにリダイレクトdev.askia.comしますwww.askia.com。したがって、すべてのリクエストはまたはに移動するdev.askia.com必要がありwww.askia.comます。

于 2009-04-28T16:09:51.647 に答える
1

Apacheで仮想ホストを使用する場合、リストされている最初のホストが常に不一致のデフォルトになります。

#default vhost
# any non-matches will land here

<VirtualHost  _default_:80>
ServerName www.askia.com:80
DocumentRoot /path/to/site

ErrorLog /path/ti/sites/logs/error_log

</VirtualHost>


# vhost #2 

<VirtualHost  _dev_Site_:443>
ServerName dev.askia.com:443
DocumentRoot /path/to/dev/site

ErrorLog /path/to/dev/sites/logs/error_log

#ssl details
SSLEngine on
SSLCipherSuite HIGH:MEDIUM
SSLCertificateFile /location/securti.crt
SSLCertificateKeyFile /location/securti.key


#any rewrite rules to apply only to this (default) domain
# force SSL for instance..
RewriteRule .* - [F]
RewriteCond   %{SERVER_PORT}  !^443$
RewriteRule (.*) https://dev.askia.com/
</VirtualHost>

#etc, etc
于 2009-05-04T12:30:03.357 に答える