開発用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を実行しています
私はあなたが抱えているほぼ正確な問題を抱えていました。これは、デフォルトのServerName(/etc/Apache2/conf.d/servername.conf内)とVirtualHost定義ファイル(/etc/Apache2/sites-available/site.com)のServerNameが等しいことに起因しています。
サブドメインごとに、サーバー名としてサブドメインを指定することを除いて、上記のファイルと同じようにファイルを作成します。 * .mydomain.comをサーバーエイリアスとして削除します。 Apacheで設定ファイルを有効にし、Apacheを再起動します。
あなたが探しているものには、サーバーが応答するホスト名のセクションが必要になると思います。現在設定したものすべてのポート80トラフィックが取得され、/ home/sysadmin/public_html/happyslice.net/publicにポイントされます
セクションと適切なドキュメントルートを持つセクションを追加してみてください。このようにして、bill and tedを使用して、同じサーバーから異なるコンテンツを、異なるサーバーの外観のルックアンドフィールで提供できます。