Windows 호스트 파일의 와일드 카드


Answers

질문에 답하기 위해 Windows의 hosts 파일에서 와일드 카드를 사용할 수 없습니다.

그러나 호스트 파일을 변경하여 새 사이트가 작동하도록하려면 ... 이렇게 아파치를 구성 할 수 있으며 설정을 편집하지 않아도됩니다.

http://postpostmodern.com/instructional/a-smarter-mamp/

기본적으로 내 설정을 기반으로 한 빠른 요약은 apache.conf 파일에 다음을 추가합니다.

 LoadModule vhost_alias_module modules/mod_vhost_alias.so

 NameVirtualHost *:80

  <Directory "/xampp/sites">
      Options Indexes FollowSymLinks Includes ExecCGI
      AllowOverride All
      Order allow,deny
      Allow from all 
  </Directory>

  <VirtualHost *:80>
      VirtualDocumentRoot c:/xampp/sites/%-1/%-2+/
  </VirtualHost>

이렇게하면 다음과 같은 항목을 추가 할 수 있습니다.

127.0.0.1       test.dev

그런 다음 c : \ xampp \ sites \ dev \ test 디렉토리를 만들고 거기에 필요한 파일을두면 작동합니다.

다른 옵션은 apache.conf에서 <Directory> 태그를 사용하고 http://localhost/project/ 의 페이지를 참조하는 것입니다.

Question

로컬 개발 머신을 설정하여 *.local 에 대한 모든 요청을 localhost 로 리디렉션하려고합니다. 아이디어는 여러 사이트를 개발할 때 site1.local , site2.local 등의 Apache에 가상 호스트를 추가하고 모두 localhost 해석하도록 허용하는 반면 Apache는 그에 따라 다른 사이트를 제공한다는 것입니다.

나는 Windows XP에 있습니다.

나는 추가를 시도했다.

127.0.0.1       *.local

c:\windows\system32\drivers\etc\hosts 파일에 또한 시도 :

127.0.0.1       .local

어느 쪽도 효과가없는 것 같습니다.

다른 포트 번호로 설정할 수 있다는 것을 알고 있지만 포트가 어느 것인지 기억하기 어렵 기 때문에 고통 스럽습니다.

로컬 DNS 서버 나 다른 어떤 제안을 설정하지 않으려 고합니다.




나는이 간단한 도구를 만들어 호스트의 자리를 차지했습니다. 정규 표현식이 지원됩니다. https://github.com/stackia/DNSAgent

샘플 구성 :

[
    {
        "Pattern": "^.*$",
        "NameServer": "8.8.8.8"
    },
    {
        "Pattern": "^(.*\\.googlevideo\\.com)|((.*\\.)?(youtube|ytimg)\\.com)$",
        "Address": "203.66.168.119"
    },
    {
        "Pattern": "^.*\\.cn$",
        "NameServer": "114.114.114.114"
    },
    {
        "Pattern": "baidu.com$",
        "Address": "127.0.0.1"
    }
]



이미 여기에 훌륭한 제안을 추가하기 위해 XIP.IO 는 공개적으로 사용할 수있는 환상적인 와일드 카드 DNS 서버입니다.

      myproject.127.0.0.1.xip.io  -- resolves to -->   127.0.0.1
  other.project.127.0.0.1.xip.io  -- resolves to -->   127.0.0.1
   other.machine.10.0.0.1.xip.io  -- resolves to -->   10.0.0.1

(비 루프백 주소를 지정하는 기능은 호스트 파일에 액세스 할 수없는 iOS 기기의 사이트를 테스트하는 데 환상적입니다.)

이것을 다른 답변에 언급 된 Apache 구성 중 일부와 결합하면 VirtualHosts를 0으로 설정 하여 잠재적으로 추가 할 수 있습니다.




이것 ( https://github.com/zapty/echoipdns )에 echoipdns를 사용할 수 있습니다.

echoipdns local 을 실행 echoipdns local .local 하위 도메인에 대한 모든 요청이 127.0.0.1로 리디렉션되므로 xyz.local 등의 도메인은 127.0.0.1로 확인됩니다. 다른 접미사를 사용하여 로컬 이름을 원하는 이름으로 바꿀 수도 있습니다.

Echoipdns는 훨씬 강력합니다. 네트워크에있는 다른 컴퓨터의 URL을 사용하려는 경우에도 0으로 구성하여 사용할 수 있습니다.

예를 들어 컴퓨터의 IP 주소가 192.168.1.100 인 경우 이제 192.168.1.100으로 해석되는 도메인 이름 xyz.192-168-1-100.local을 사용할 수 있습니다. 이 마법은 도메인 이름의 두 번째 부분에서 IP 주소를보고 DNS 쿼리에서 동일한 IP 주소를 반환함으로써 echoipdns에 의해 수행됩니다. 원격 시스템에 액세스하려는 시스템에서 echoipdns를 실행해야합니다.

echoipdns는 독립 실행 형 DNS 프록시로 설정 될 수 있으므로이 DNS를 가리킴으로써 매번 특별한 명령을 실행하지 않고도 위의 모든 이점을 사용할 수 있으며 모바일 장치에서도 사용할 수 있습니다.

따라서 본질적으로 로컬 및 팀 환경에 대한 와일드 카드 도메인 기반의 DNS 개발을 단순화합니다.

echoipdns는 Mac, Linux 및 Windows에서 작동합니다.

참고 : 나는 echoipdns의 저자입니다.




@petah와 Acrylic DNS Proxy가 최선의 대답이며, 결국 그는 @jeremyasnyder가 좀 더 자세히 설명하는 Apache를 사용하여 다중 사이트를 수행 할 수있는 기능을 언급합니다 ...

그러나 우리의 경우 우리는 멀티 테넌트 호스트 시스템을 테스트하고 있으므로 우리가 테스트하고자하는 대부분의 도메인은 동일한 virtualhost 로 이동하지만 다른 두 도메인은 다른 곳으로 이동합니다.

그래서 우리의 경우, ServerAlias 지시문에 정규식 와일드 카드를 사용하면됩니다.

ServerAlias *.foo.local



그런 와일드 카드를 추가 할 수는 없지만 적어도 테스트를 위해 필자가 필요로하는 사이트 목록을 호스트 파일에 추가하면 다음과 같이 추가 할 수 있습니다.

127.0.0.1 site1.local
127.0.0.1 site2.local
127.0.0.1 site3.local
...




"와일드 카드 허용 안 됨"이라는 Windows 호스트 파일 사용에 관한 게시물을 발견했습니다.

이전에는 hosts 파일에 추가 항목을 추가했습니다. 이전에 말했듯이 이미 apache config 파일을 편집 할 때 많은 추가 작업이 필요하지 않기 때문입니다.




와일드 카드와 정규식을 지원하는 방법을 제공하는 AngryHosts 사용해보십시오. 실제로 호스트 파일 향상 및 관리 소프트웨어입니다.
더 많은 기능은 @ http://angryhosts.com/features/ 볼 수 있습니다.




로컬 DNS 서버에서 와일드 카드 DNS를 사용하여이 작업을 수행했습니다. *.local -> 127.0.0.1 과 같은 A 레코드 추가

네트워크 설정에 네트워크의 컴퓨터에 대한 도메인 접미사 검색 목록에 선택한 도메인 접미사가 있어야하므로 .local 을 회사의 내부 도메인 (예 : .int )으로 바꾸고 하위 도메인을 추가 할 수 있습니다. .localhost.int 를 사용하여 무엇을위한 것인지 명확히하십시오.

그래서 *.localhost.int 는 네트워크에있는 모든 사람들을 위해 127.0.0.1 로 해석 될 것이고, 엔드 포인트가 그 서브 도메인 (예 : site1.localhost.int , site2.localhost.int 멈추는 경우 모든 개발자의 설정 파일 설정이 "그냥 작동"할 것입니다. 거의 우리가 도입 한 계획.

dnsmasq 도 멋지게 보이지만 아직 시도하지 않았습니다 : http://ihaveabackup.net/2012/06/28/using-wildcards-in-the-hosts-file/




Related