web-dev-qa-db-ja.com

ローカルネットワーク上でWebサーバーを適切に設定するにはどうすればよいですか?

イントラネット(ネットワーク内)のウェブサイトを持っていますが、少し面倒です。まず第一に、これはホームネットワークです。 PHPを使用してApacheWebサーバーを実行しているコンピューターがあり、ローカルネットワーク上の3つのURLをそのコンピューターにポイントしたいと思います。私はある程度の成功を収めましたが、それが常に信頼できるとは限りません。 DNSとDHCPには、Thompson Speedtouch ST546 v6DSLルーターがあります。

編集:私はCMSでかなりのことをしているので、ファイルホスティングだけでなく、イントラネットWebサイトにも必要です。


わかりやすくするために書き直してください:ローカルネットワーク上にIPアドレス10.0.0.2、abp.bhc.comwiki.bhc.com、およびserver.bhc.comを指す3つのサブドメインを持つコンピューターがあります。 Webサーバーの個人DNS名を使用します。私はDNSにSpeedTouchを使用しており、それを完全に制御できます。私が1時間それをいじった後、それは通常うまくいきます。

私の質問は、別のドメインが必要になるたびに手動でドメインを追加するよりも洗練されたソリューションがあるかどうかです。ただし、通常は機能するようです。

これが私の現在のVHファイルです:

NameVirtualHost 10.0.0.2

<VirtualHost 10.0.0.2>
ServerName abp.bhc.com
DocumentRoot "htdocs/abp"
</VirtualHost>
<VirtualHost 10.0.0.2>
ServerName server.bhc.com
DocumentRoot "htdocs/server"
</VirtualHost>
<VirtualHost 10.0.0.2>
ServerName wiki.bhc.com
DocumentRoot "htdocs/wiki"
Alias /wiki htdocs/wiki/wbhc/index.php
</VirtualHost>

Duh、私は自分の差し迫った問題を理解しました。最近新しいLANアダプターを入手したため、IPアドレスの設定が間違っていたようです。より良い解決策があるかどうかについての私の質問はまだ残っています。

2
Arlen Beiler

2つの方法があります:

  1. 独自のDNSをセットアップして構成します。
  2. サイトにアクセスする各ファイルシステムにhostsファイルのエントリを追加します。

ルーターのDNS設定を変更できず、バインドをセットアップおよび構成したくないと想定しています。ホストファイルにエントリを追加するには、ファイル(Linuxの場合は/ etc/hosts、Windowsの場合は/ etc/hosts c:\ windows\system32\drivers\etc\hosts)を開き、次のような行を追加します。

192.168.0.1  abp.bhc.com
192.168.0.1  wiki.bhc.com
192.168.0.1  server.bhc.com
1
shf301

内部DNSサーバーがない場合は、サーバーのIPアドレスをすべてのクライアントのhostsファイルに入れて、shf301のようにサーバーに入れることができます。 Apacheは、次のような仮想ホストで構成する必要があります。

NameVirtualHost *:80
<VirtualHost *:80>
   ServerAdmin [email protected]
   DocumentRoot c:/www/wiki
   ServerName wiki.bhc.com
</VirtualHost>

<VirtualHost *:80>
  ServerAdmin [email protected]
  DocumentRoot c:/www/server
  ServerName server.bhc.com
</VirtualHost>

ドキュメント: Apache仮想ホスト

1
krossner

NixサーバーにBINDを設定し、nixサーバーに静的IPを割り当てます。

可能であれば、ルーターのDNSサーバーを変更してください。

最初のDNSエントリは、nixサーバーの静的IPである必要があります。 2番目のエントリはISPの最初のIPアドレスである必要があります。

何らかの理由でルーターで編集を行うことができない場合は、代わりにネットワークカードにDNSを静的に設定してください。

これにより、イントラネットサイトを表示する必要のある1つまたは複数のマシン上のHostファイルをいじる必要がなくなります。

0
Jlucas

少数のコンピューターでのみ機能する必要がある場合の簡単な解決策は、これらのコンピューターでhostsファイルを使用することです。 http://en.wikipedia.org/wiki/Hosts_%28file%29 いいえその場合、DNSと格闘する必要があります(ただし、サーバーには固定IPが必要です)。

0
kasterma

残念ながら、IPはおそらく動的であるため、数日ごとに変更され、IPを指すドメインは無効になります。これを回避する唯一の方法は、ある種のダイナミックDNSシステムにサインアップすることです。このシステムでは、コンピューター上の小さなプログラムがDNSサーバーに新しいIPを変更するたびに通知し、同期を維持します。それ以外に、ISPから静的IPを購入することもできますが、それはかなり高額になります。 :(

0
DataWizard

純粋に推測すると、サーバーには動的IPがあり、代わりに静的IPを検討することをお勧めします。

さらに、他のコンピューターを正常に処理する唯一の方法は、サーバーが24時間年中無休で稼働している場合は、ホストファイルを設定するか、コンピューターにDNSを設定して自分でDNSをホストすることです。

0
Tamara Wijsman

そのマシンで数十のドメイン(Webサイト)を実行できます。サブドメインの代わりにフォルダを使用してください。 htdocsに2011と呼ばれるフォルダを作成します。次に、blogという別のフォルダを作成します。そこにブログソフトウェアをインストールします。次に、アドレスバーに「192.168.0.1/2011/blog」と入力します。それはうまくいくでしょう。

0
Joe