1

これを行う方法に関する記事を探していましたが、詳細で簡単な手順が見つかりました。これに関する情報がたくさんあることは知っていますが、正しいものを探していないだけかもしれません。

ドメイン名のコントロール パネルでblog.domain.com、Web サーバーの IP アドレスに移動するように追加しました。blog.domain.comただし、Apache の構成内で、特定のフォルダーに直接移動できるようにしたいと考えています。

どのファイルを変更し、何を追加する必要がありますか?

4

1 に答える 1

5

を探していNameVirtualHostます。私はいつもそれを使用しています。

NameVirtualHost使用している OS は明確ではありませんが、一般的には、最初に必要なポートを有効にする必要があります。ポート 80 を使用すると仮定するので、Apache の設定で次の行を見つけて、次のように設定します。

NameVirtualHost *:80

Apache 構成がポート 80 をリストするように設定されていることを確認してください。

Listen 80

次に、サブドメインの場合、ここで魔法が起こります. 繰り返しますが、私は基本的なことをしているだけなので、サーバーの設定に合わせて調整してください。

<VirtualHost *:80>
  ServerName blog.domain.com
  ServerAlias blog.domain.com

  DocumentRoot /var/www/blog.domain.com

</VirtualHost>

キーはServerNameと のワイルドカードVirtualHostです。基本的には、「わかりました。NameVirtualHostポート 80 で使用しています。この構成はサーバー名用です。blog.domain.comこの構成のすべてのオプションに注意を払い、blog.domain.com. そして、DocumentRootこの設定で私が示したものであるべきです。」</p>

編集:以下の元のポスターのコメントに基づいて、追加のアドバイスを追加します。

まず、決して編集/etc/apache2/sites-available/defaultしないでください。代わりに、新しいサブドメイン専用の新しい構成ファイルを作成してください。これにより、管理が容易になります。私の例では、実行sudoして編集する必要があると仮定します。nano

sudo nano /etc/apache2/sites-available/blog.domain.com.conf

そして、VirtualHost上記のものをその新しいblog.domain.com.confファイルに追加します。もちろん、VirtualHostディレクティブが必要なものと一致していることを確認してください。私のはほんの一例です。

これが完了したら、次のようなシンボリック リンクsites-availableを作成する必要があります。sites-enabled

sudo ln -s /etc/apache2/sites-available/blog.domain.com.conf /etc/apache2/sites-enabled/blog.domain.com.conf

よし、これで終わり?私が取り組んだUbuntu 12.04サーバーと同様のApache2構成レイアウトを持っているように見えるので、このファイルに移動して、NameVirtualHostが設定されているかどうかを確認します。

sudo nano /etc/apache2/ports.conf

次のような 2 行が表示されます。

NameVirtualHost *:80
Listen 80

よし、準備は整った?ここで、Apache を再起動すると、設定が完了します。

テストする場合は、この行が含まれるサブドメインのドキュメント ルートにテスト ファイルを作成します。PHPを使用できると仮定しています:

<?php
echo $_SERVER['SERVER_NAME'];
?>

すべてが機能する場合、ディレクトリが設定されているホストのサブドメインがエコー バックされます。blog.domain.com

于 2013-11-10T05:47:09.450 に答える