_default_ VirtualHost overport on port 80


10

以下のように2つの仮想ホストをapache2 confファイルに追加しました。

<VirtualHost *:80>
    DocumentRoot /var/www/html/site1
    ServerName www.site1.com
    ServerAlias site1.com
</VirtualHost>


<VirtualHost *:80>
    DocumentRoot /var/www/html/site2
    ServerName www.site2.com
    ServerAlias site2.com
</VirtualHost>

次に、Apacheを再起動した後にエラーが発生しました:

[警告] デフォルトの VirtualHostがポート80で重複しています。最初のものが優先されます

グーグルを検索し、彼らは下の行のコメントを外すと言ったので、私はしました:

NameVirtualHost *:80

再起動すると、エラーは発生しませんが、両方のサイトが最初のサイトに移動します。

Centos5を実行しています。この問題を解決するにはどうすればよいですか?

回答:


13

あなたは間違いなくNameVirtualHostのコメントを外したい。これは、到達するために使用されたDoman名に基づいて、サーバーに異なる仮想ホストをサーバーに通知します。これが、削除されたすべてのリクエストが最初のサイトに移動する理由です。


1
ええ、私はそれをしました、そしてそれはまだ機能しません。
デビッド

それでもsite2.comを適切に提供していませんか?あなたの警告は、最初のVirtualHostが一致しない名前のデフォルトサイトであることを示しているだけのようです。これは基本的に、仮想ホストが機能する方法です。
クリストファーカレル

1
その行のコメントを外した後、警告は表示されず、両方のサイトはまだsite1に移動します
David

ブラウザがsite2のドメインの下にあるsite1のコンテンツをキャッシュした可能性はありますか?キャッシュをクリアするか、適切な更新を行ってください。(ctrl + F5)
クリストファーカレル

1

私はすでにこの問題をCWPで修正しています

/usr/local/apache/conf/sharedip.confに移動するだけです

これを確認してください* IPサーバーに

NameVirtualHost *:80
<VirtualHost *:80>
    ServerName yourdomainserver.ltd
    DocumentRoot /usr/local/apache/htdocs
    ServerAdmin root@youremail.com
    <IfModule mod_suphp.c>
        suPHP_UserGroup nobody nobody
    </IfModule>
</VirtualHost>
<Directory "/">
        AllowOverride All
        Allow from all
        Order Deny,Allow
</Directory>

次に、/ usr / local / apache / conf.d / vhost.confに移動し、各仮想ホストが次のようになっていることを確認します

# vhost_start chango.com.ve
<VirtualHost *:80>
ServerName yourdomain.ltd
ServerAlias www.yourdomain.ltd
ServerAdmin youremail@yourdomain.ltd
DocumentRoot "/home/yourdomain/public_html"
ScriptAlias /cgi-bin/ "/home/yourdomain/public_html/cgi-bin/
# 
# Custom settings are loaded below this line (if any exist)
# Include "/usr/local/apache/conf/userdata/yourdomain/yourdomain.ltd/*.conf    
</VirtualHost>^M
# vhost_end yourdomain.ltd

これは私のために働く!

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.