2011-03-06 6 views
-2

は、私はそのようなないxx.comのhttpd.confのためのサーバー別名のように例外を追加します。にServerAlias名前

おかげ ジャン

+0

私は理解していません。明確にすることはできますか? http://httpd.apache.org/docs/2.0/mod/core.html#serveralias Downvote: –

+0

'ServerAlias'があることをしません。 mod_rewrite文書の最初の例の1つは、一致しないホストを検出するためのものです。マニュアルを最初にお読みください: http://httpd.apache.org/docs/2.0/misc/rewriteguide.html#url – leepowers

+0

@pekka <仮想ホスト.....> ServerAlias * x *!x2 – X10nD

答えて

2

は、私の知る限りでは、にServerAliasは、一度に単一のドメインと一致しました。例外を追加する唯一の方法は、そのドメインのServerAliasではないことです。

VirtualHostをxx.comに一致させたくない場合は、ServerAlias xx.comをVirtualHostに入れないでください。

それはかなり明白だので、私はあなたがについて質問されるかもしれない、私は他のものに推測しましょう、それはあなたの問題ではない推測している:

あなたがその意志ワイルドカードにServerAliasを行う方法を求めている場合ApacheのVirtualHost限定解析に頼るのではなく、mod_rewriteを使用しているはずです。これは非常に強力で正規表現に基づいており、あらゆる種類のワイルドカードやパターンを扱うことができます。

の場合は、他の一方で、あなたはまた、mod_rewriteので行うことができるよう、xx.com上の特定のURLに例外を追加し、異なるのVirtualHostで、ちょうどそのURLを指すようにしたいです。要するに

は、mod_rewriteのを見て、それはあなたがあなたがする必要がある何を助けることができるかどうかを確認します。

また、最初のVirtualHostの動作を混乱させる可能性があります。最初のVirtualHostはです。デフォルトは常にです。他のVirtualHostが一致しない場合は、最初にApacheが受信するすべてのドメインで使用されます。デフォルトのVirtualHostからドメインを「除外する」唯一の方法は、固有のVirtualHostを追加してそれを取得することです。いずれにしても、mod_rewriteはおそらくあなたの友人になるでしょう。

編集:ここに私のVirtualHostの設定からの抜粋です、多分これはあなたが私はあなたがする言っているかを理解するのに役立ちます:

<VirtualHost *:80> 

    # This is the default VirtualHost, because it is listed first. 
    # All domain names that are not recognized elsewhere go here 
    # automatically. All this VirtualHost does is to display a simple 
    # HTML page informing users that no site exists at that address. 

    # ServerName/Alias doesn't matter, because it's not a real vhost 
    ServerName default-vhost.mysite.net 
    DocumentRoot /var/www/nosite 

    # In case someone goes to http://unknownsite.com/something/else.html 
    # make sure they get the "no site" message, so redirect all URLs. 
    RewriteEngine On 
    RewriteRule ^/(..*) /index.html [NS] 
</VirtualHost> 

<VirtualHost *:80> 
    # This is my real website. Because it is listed second, it will ONLY 
    # be accessible from hostnames listed as ServerName or ServerAlias 

    ServerName mysite.net 
    DocumentRoot /var/www/mysite 
</VirtualHost> 
+0

短い話ですが、ウェブホストは.htaccessに問題があります。除外してください – X10nD

+0

私は理解するかどうか見てみましょう。あなたは 'ServerAlias x.com'を持っているVirtualHostを持っていますが、あなたがx2.comに行くと、x.com VirtualHostを手に入れますか? – cecilkorik

+0

私はServerAlias * x *を持っています!x2 それはリダイレクトしたくないということです!x2 – X10nD

関連する問題