web-dev-qa-db-ja.com

ServerNameがApache2とUbuntuで機能しない

開発用LAMPサーバーをセットアップし、動的サブドメイン、別名ted.servername.com、bob.servername.comを許可したいと思います。

これが私のサイトです-アクティブファイル

<VirtualHost *:80>
    # Admin Email, Server Name, Aliases
    ServerAdmin     [email protected]
    ServerName      happyslice.net
    ServerAlias     *.happyslice.net

    # Index file and Document Root
    DirectoryIndex  index.html
    DocumentRoot    /home/sysadmin/public_html/happyslice.net/public

    # Custom Log file locations
    LogLevel        warn
    ErrorLog        /home/sysadmin/public_html/happyslice.net/log/error.log
    CustomLog       /home/sysadmin/public_html/happyslice.net/log/access.log combined

そして、これがSudo Apache2ctl -Sからの出力です

VirtualHost configuration:
wildcard NameVirtualHosts and _default_ servers:
*:80                   is a NameVirtualHost
         default server happyslice.net (/etc/Apache2/sites-enabled/000-default:1)
         port 80 namevhost happyslice.net (/etc/Apache2/sites-enabled/000-default:1)
         port 80 namevhost happyslice.net (/etc/Apache2/sites-enabled/happyslice.net:5)
Syntax OK

サーバーのホスト名はsrv.happyslice.netです。

Happyslice.netを使用するとApache2ctlからわかるように、デフォルトの仮想ホストを取得します。サブドメインを使用すると、happyslice.netホストを取得します。したがって、後者は私が望むように機能していますが、メインのURLは機能しません。

ここであらゆる種類のバリエーションを試しましたが、ServerNameが正しい場所に関連付けられていないようです。

考え?私は困惑しています。参考までに、私はApache2.1とUbuntu 10.04LTSを実行しています

4
CreativeNotice

私はあなたが抱えているほぼ正確な問題を抱えていました。これは、デフォルトのServerName(/etc/Apache2/conf.d/servername.conf内)とVirtualHost定義ファイル(/etc/Apache2/sites-available/site.com)のServerNameが等しいことに起因しています。

3
Matt Alexander

サブドメインごとに、サーバー名としてサブドメインを指定することを除いて、上記のファイルと同じようにファイルを作成します。 * .mydomain.comをサーバーエイリアスとして削除します。 Apacheで設定ファイルを有効にし、Apacheを再起動します。

1
user90105

あなたが探しているものには、サーバーが応答するホスト名のセクションが必要になると思います。現在設定したものすべてのポート80トラフィックが取得され、/ home/sysadmin/public_html/happyslice.net/publicにポイントされます

セクションと適切なドキュメントルートを持つセクションを追加してみてください。このようにして、bill and tedを使用して、同じサーバーから異なるコンテンツを、異なるサーバーの外観のルックアンドフィールで提供できます。

http://httpd.Apache.org/docs/2.2/vhosts/

0
TommyW