web-dev-qa-db-ja.com

Apache2ubuntuの仮想ホストで機能しないサブドメイン

Ec2アカウントにサブドメインを設定しようとしていますが、何が起こっているのか理解できません。私は数時間を探しましたが、答えを見つけることができませんでした:-/

仮想ホストを使用してサブドメインを設定しようとしていますが、何を試してもブラウザがサブドメインを見つけることができません:

次のvhostsファイルを設定しています。

---(Apache2/sites-available/mysite(このサイトは現在機能しています)



    <VirtualHost *:80>
        ServerName mysite.com
        ServerAdmin webmaster@localhost

        DocumentRoot /home/sites/mysite

        <Directory /home/sites/mysite>
            Options Indexes FollowSymLinks MultiViews
            AllowOverride All
            Order allow,deny
            allow from all
        </Directory>

        ErrorLog ${Apache_LOG_DIR}/mysite-error.log

        LogLevel warn

        CustomLog ${Apache_LOG_DIR}/mysite-access.log combined

    </VirtualHost>

Apache2/sites-available/red(これは私が設定しようとしているサブドメインです)



    <VirtualHost *:80>
        ServerName red.mysite.com
        ServerAdmin webmaster@localhost

        DocumentRoot /var/www/red
        <Directory /var/www/red>
            Options Indexes FollowSymLinks MultiViews
            AllowOverride All
            Order allow,deny
            allow from all
        </Directory>

        ErrorLog ${Apache_LOG_DIR}/red-error.log

        LogLevel warn

        CustomLog ${Apache_LOG_DIR}/red-access.log combined

    </VirtualHost>

Apachemod_rewriteが有効になっています。

A2ensiteを使用して両方のサイトを有効にしました。変更を加えるたびに、必ずApacheを再起動します。

/ etc/hosts



    127.0.0.1 localhost
    127.0.0.1 mysite.com
    127.0.0.1 red.mysite.com

どんな助けでもいただければ幸いです。

ありがとう!

1
cy834sh4rk

同様のエラーをすべてデバッグする方法:

1)ドメインred.whatever.comが正しいIPを指していることを確認します

これを行う方法? linux/osxでDigのようなツールを使用するか、 オンラインツール に頼ってください。
このような場合にブラウザが報告する一般的なエラーは、ドメインを見つけることができませんでした...

2)IPが正しい場合は、両方のApacheログ(error.logとaccess.log)を確認します。

これらのログに情報がない場合は、ファイアウォールをチェックして、ポート80が開いているかどうかを確認してください。
このような場合のブラウザレポートの一般的なエラーは、接続できませんでした...

3)IPが正しく、ポートが開いている、Apacheが期待したコンテンツを提供していない

あなたの問題の解決策はログファイルによって与えられます
ブラウザはサーバーから送信された404または同様のhttpエラーを表示します...

編集:あなたのコメントからあなたの問題は1番にあります。

1
Frankie

NameVirtualHostディレクティブを実行しますか(例:NameVirtualHost *:80)仮想ホストセクションの前に構成ファイルに表示されますか?そうでない場合、すべてのリクエストは最初の仮想ホストに送られます。