私は持っていることを試みています
http://www.mysite.com および http://test.mysite.com
本番Webサーバーで実行しており、本番Webサーバーでデータを転送する前に、ローカルマシンでいくつかの基本的なテストを行っています。
可能であれば、Apacheの仮想ホストと/ etc/hostsのみを使用したいと思います。
私はvirtualHost内でApacheのServerAliasディレクティブを次のように使用します:
<VirtualHost *:80>
DocumentRoot /path/to/mysite
ServerName www.mysite.fr
ServerAlias *.mysite.com
<Directory /path/to/mysite>
Options FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
次に、/ etc/hostsに、必要なドメインを配置します。
127.0.0.1 www.mysite.com
127.0.0.1 test.mysite.com
これをローカルでテストすると、機能します。 (www.mysite.comとtest.mysite.comのどちらにもアクセスできます)リモートWebサーバーでテストすると、設定が無視され、デフォルトのwww.mysite.comのみが使用可能になります。
何が足りないのですか?または、私の質問は、仮想ホストと/ etc/hostsファイルだけを使用して、Webサーバーで両方のURL(wwwとtest)にアクセスできるようにすることは可能ですか?
Test.mysite.comにどのようにアクセスしようとしていますか?
これをインターネットで機能させるには、DNSをホストするサーバー/サービスにtest.mysite.comのDNS Aレコードを追加するか、リモートサーバーのパブリックIPのレコードを/ etc/hostsファイルに追加する必要があります。
/ etc/hostsはローカルマシン専用です。
ローカルセットアップの/ etc/hosts:
[YOUR REMOTE SERVER'S PUBLIC IP] www.mysite.com test.mysite.com
ただし、これは、test.mysite.comのリモートサーバーのパブリックIPのDNS Aレコードを追加するまで、あなた(またはレコードを適切なhostsファイルに手動で追加するシステム)でのみ機能します。
はい、説明した構成は、以下が実施されている限り可能です。
これはあなたの窮状を助けるかもしれません。
静的IPを使用して複数のドメインにサービスを提供する場合は、複数のインターフェースが必要です。仮想インターフェイスを使用しない限り。
<免責事項:これは単なる例です。自己責任。 >>
開く:/etc/network/interfaces
auto eth0
iface eth0 inet dhcp
auto eth0:1
iface eth0:1 inet static
address 192.168.0.2
network 192.168.0.0
netmask 255.255.255.0
#if you don't have a gateway setup, comment "gateway" line
gateway 192.168.0.1
broadcast 192.168.0.255
auto eth0:2
iface eth0:2 inet static
address 192.168.0.3
network 192.168.0.0
netmask 255.255.255.0
#if you don't have a gateway setup, comment "gateway" line
gateway 192.168.0.1
broadcast 192.168.0.255
その後:
移動先:/etc/hosts
192.168.0.2 www.mysite.com
192.168.0.3 test.mysite.com
DNSを設定すると、同じIPを使用してシステムをマッピングできます。これがお役に立てば幸いです。それが最も明確な情報でない場合は私に連絡してください。個別のIP名とドメイン名を使用することを忘れないでください。 IPアドレスを再利用しないでください。ドメイン名(NICKNAME)を再利用しないでください。これは、/etc/hosts
による唯一の一致です。