0

半年前、「.dev」で終わるいくつかの仮想ホストを使用して、コンピューターに XAMPP をインストールしました。これらの Web サイトを Chrome で開こうとすると、エラーICANN Name Collisionが表示されます。いくつかの調査の結果、問題を抱えているのは私だけではなく、唯一の回避策は「.local」に変更することであることがわかりました。

そのため、ホスト ファイルを変更し、httpd.config でシステムを再起動し、DNS キャッシュをフラッシュしましたが、機能しなくなりました。新しいローカル ドメイン名でサーバーにアクセスできません。IE を使用して example.dev (または以前に使用したアドレス) を入力すると、localhost にリダイレクトされますが、古いディレクトリにはリダイレクトされません。したがって、Apache は変更に気づき、新しい構成になっていると思いますが、私のブラウザはどういうわけか、サーバーが見つからないことを教えてくれます。

最も可能性の高いエラーは何ですか? どのエラー ログが役に立ちますか?

XAMPP/Apache Shell を使用して httpd -S と入力すると、v-host.config ファイルのように現在の v-Host 設定が出力されます。

ホスト ファイル:

127.0.0.1 デシベルローカル

127.0.0.1 テスト.ローカル

127.0.0.1 www.test.local

127.0.0.1 ホスト.ローカル

127.0.0.1 www.host.local

apache\conf\extra\httpd-vhosts.conf:

<VirtualHost *:80>
    ServerName localhost
    ServerAlias localhost
    DocumentRoot "C:/XAMPP_DEV/htdocs"
</VirtualHost>
<VirtualHost *:80>
    ServerName db.local
    DocumentRoot "C:/XAMPP_DEV/phpmyadmin"
</VirtualHost>
<VirtualHost *:80>
    ServerName test.local
    ServerAlias www.test.local
    DocumentRoot "C:/XAMPP_DEV/htdocs/test"
</VirtualHost>
<VirtualHost *:80>
    ServerName host.local
    ServerAlias www.host.local
    DocumentRoot "C:/XAMPP_DEV/htdocs"
</VirtualHost>

これが私の V-Host 構成とホスト ファイルです。# で始まるすべての行を削除しました。

4

1 に答える 1

0

はじめに..

非常によく似たものを調べていたので、これは私に寄せられた古い質問です。しかし、たまたま、「ルート化」したくないAndroid携帯にそれを適用する方法ではなく、答えを知っています。とにかく..それがあなたに役立つかどうかはわかりません-おそらくあなたがすでに解決していないかもしれません-しかし、それは他の人を助けることができます.

説明するだけで、新しい gTLD.devになりました。そのため、これらのドメインを所有している人もいます。

それを指す固定 IP を持つことはできません - セキュリティと法的な理由からです。ブラウザがそれを認識しないのはそのためです。実際には、インターネット プロバイダー (または選択した DNS サーバー) の DNS サーバーです。

しかし..

やり方がある。を使用する必要はありません.local

hostsファイル (同様の名前のサーバー ファイルではなく、システム ファイル) が Web サイトをホストするローカル マシンを指している場合、ローカル ブラウザーはそれを認識します。または、ローカルの DNS サーバーがそのアドレスをローカルのマシンまたはサーバーに向けている場合。どちらのシナリオでも、提供された IP が適用されます。

ほとんどの開発者は DNS サーバーを使用しません。あなたがDNSサーバーを持っているなら、あなたはおそらく私よりも多くのことを知っているので(これは達成するのがそれほど難しいことではありません.. :)、おそらくこれらの問題を抱えていないでしょう.

それを修正する..

以前と同じ構成を使用していると仮定すると.dev、コンピューター (またはローカルネットワーク内のすべてのコンピューター - ケースによって異なります) に移動して、C:\Windows\System32\drivers\etc\hostsWindows でファイルを編集できます。Linux の場合も同じです/etc/hosts

ファイルの最後に次を配置できます。

IP_OF_THE_MACHINE    yourfakedomain.dev

IP_OF_THE_MACHINE開発中のページの「ホスト」の IP になります。

  • あなただけがそれを見ると仮定して、127.0.0.1;を使用してください。
  • あなたの友人/上司があなたが開発しているものの現在のステータスを確認する必要があると仮定すると、彼のコンピューターでこのファイルを編集し、マシンの IP アドレスとローカル開発用の偽のドメインを入力します。これは、それらが同じネットワーク内にあることを前提としています。
  • あなたがそれを使用しているが、ホストが別の PC にあると仮定して、その PC の IP アドレスを入力します (上記の場合のように)。

yourfakedomain.dev自明だと思います..

(問題にはならないはずですが、これらの*を、使用する偽のドメイン名 ( from から<VirtualHost *:80>toなど) に変更し<VirtualHost test.dev:80>ます。もちろん、それぞれの場合の適切な名前です。)

これを試して、結果を確認してください。すべて機能する必要があります。

ノート..

常に少なくとも 3 つのファイルを編集する必要があります。

  • 仮想ホスト ファイル - いくつかの個別のファイルに分割されているか、1 つに分割されている (のようにhttpd-vhosts.conf)。
  • httpd.confIP とポート範囲を選択し、仮想ホスト ファイル (または複数のファイル) を含めます。
  • hosts「偽のドメイン名」(test.dev、mymon.is.cool、hi.world など - 想像力を働かせてください)などを強制するシステムのファイル。

常にこれで動作するはずです。古い構成または不適切な構成 (構成ファイルを削除してすべてをアンインストールする、再インストールして新たに開始する) またはルーターとの競合がない限り。

于 2016-06-06T15:30:55.783 に答える