質問
私はすぐにVPSを取得することを計画しており、ホストしたい2つのサイトがあります。ホストファイルを使用して正しくポートするために、開発環境向けにローカルVHOSTSをセットアップしています。
私の質問はうまくいけば簡単です。1つのVPSサーバーを指す2つの別々のドメインで設定すると、ローカル環境のように、domain.comのリクエストをローカルで登録するように自動的にフィルタリングするのに十分なほどスマートですか?確かにしたい:)
ありがとう!
私が尋ねていることの例:
domain1.comとdomain2.comはどちらも私のVPSにあります。
誰かがwww.domain1.comを要求すると、Apacheはこれを見て、それをdomain1.com vhostファイルに渡します。誰かがwww.domain2.comを要求すると、Apacheはこれを見て、domain2.com vhostファイルに渡します。
解決
簡単な答えは「はい」です、Apacheは賢いです。ローカルドメインをシミュレートするためにホストファイルと組み合わせてローカルVHOSTファイルを使用することに慣れている場合、VPSにまったく同じ手法を適用できます。ホストファイルで行っている部分は、Apacheが違いを知らないことを除いて、本質的にローカルネームサーバーを作成することです。名前付きVHOSTごとにservernameディレクティブを設定するだけで、ローカルと同じように機能することがわかります。
他のヒント
から私の答えを再度します 1つのVPSのみを使用して2つのドメインをホストしますか? ここのように、それはさらに関連性があります。
完全な初心者として、私は1つのApache VPSで複数のドメインをホストしようとしています。チュートリアルには、混乱につながる情報が多すぎました。
以下では、完全な初心者については、UbuntuとApacheを使用して1つのVPSサーバーで複数のドメインをホストする方法について説明します。
重要! ルートアカウントを使用してほとんどの操作を実行する必要があります。
重要! 以前にApache構成にいくつかの変更を加えようとしている場合は、元に戻してください。
VirtualHostsの作成
サーバー上のドメインのフォルダーを作成します。例えば:
/home/apache/domain1
/home/apache/domain2
任意のテキストで各フォルダーにindex.htmlファイルを配置します。
This is domain1
This is domain2
行きます /etc/apache2/sites-available
フォルダ。
ファイルdomain1.confを作成します
sudo nano domain1.conf
<VirtualHost *:80>
DocumentRoot /home/apache/domain1
ServerName domain1.com
ServerAlias www.domain1.com
</VirtualHost>
ファイルdomain2.confを作成します
sudo nano domain2.conf
<VirtualHost *:80>
DocumentRoot /home/apache/domain2
ServerName domain2.com
ServerAlias www.domain2.com
</VirtualHost>
同じ方法でサブドメインを作成できます。
sudo nano blog.conf
<VirtualHost *:80>
DocumentRoot /home/apache/blog
ServerName blog.domain.com
ServerAlias www.blog.domain.com
</VirtualHost>
作成されたサイトを有効にします
sudo a2ensite domain1.conf
sudo a2ensite domain2.conf
Apacheを再起動します
sudo service apache2 reload
ドメインをサーバーにリダイレクトします
作成されたVirtualHostsは、ドメイン名をサーバーIPにリダイレクトする場合にのみ機能します。ドメインは、IP番号に翻訳できる名前にすぎません。
ローカルコンピューター
ローカルマシンで構成をテストするには、ホストファイルを編集する必要があります。
sudo nano /etc/hosts
このように見えるはずです。
127.0.0.1 localhost domain1.com domain2.com
ホストファイルは、ドメインをローカルマシンにリダイレクトする必要があることをコンピューターに伝えます。
重要! たとえば、既存のドメインのホストファイルにエントリを作成する場合
127.0.0.1 stackoverflow.com
このWebサイトへのアクセスを緩めます。
サーバ
Webサーバーにドメインをリダイレクトするには、指定されたドメインの「A」タイプのDNSレコードをサーバーのIPアドレスに作成または変更する必要があります。ドメインレジストラが提供するパネルコントロールでそれを行うことができます。
サーバーのIPアドレスがわからない場合は、そのサーバーにログインしてコマンドラインを入力します。
ifconfig