development

/ etc / hosts에 와일드 카드 항목을 넣는 방법은 무엇입니까?

big-blog 2020. 10. 27. 22:49
반응형

/ etc / hosts에 와일드 카드 항목을 넣는 방법은 무엇입니까?


최근에 테스트 도메인의 모든 하위 도메인 (예 : example.com)을 localhost로 지정하고 싶었습니다. * .example.com의 모든 요청을 127.0.0.1로 해결하도록 지시하는 방법이 있습니까?


/etc/hosts파일이 와일드 카드 항목을 지원하지 않는 경우가 발생 합니다.

dnsmasq와 같은 다른 서비스를 사용해야합니다. dnsmasq에서 활성화하려면 dnsmasq.conf다음 행을 편집 하고 추가하십시오.

address=/example.com/127.0.0.1

다음은 원래 목표를 달성하려는 사용자를위한 구성입니다 (모두 동일한 코드베이스를 가리키는 와일드 카드-아무것도 설치하지 않음, 개발 환경, 즉 XAMPP).

호스트 파일 (항목 추가)

파일 : / etc / hosts (비 Windows)

127.0.0.1   example.local

httpd.conf 구성 (가상 호스트 활성화)

파일 : /XAMPP/etc/httpd.conf

# Virtual hosts
Include etc/extra/httpd-vhosts.conf

httpd-vhosts.conf 구성

파일 : XAMPP / etc / extra / httpd-vhosts.conf

<VirtualHost *:80>
    ServerAdmin admin@example.local
    DocumentRoot "/path_to_XAMPP/htdocs"
    ServerName example.local
    ServerAlias *.example.local
#    SetEnv APP_ENVIRONMENT development
#    ErrorLog "logs/example.local-error_log"
#    CustomLog "logs/example.local-access_log" common
</VirtualHost>

아파치를 다시 시작

pac 파일 생성 :

원하는 위치에 whatever.pac으로 저장 한 다음 브라우저의 네트워크> 프록시> auto_configuration 설정에서 파일을로드합니다 (변경하는 경우 다시로드).

function FindProxyForURL(url, host) {
  if (shExpMatch(host, "*example.local")) {
    return "PROXY example.local";
  }
  return "DIRECT";
}

dnsmasq 사용

데비안 기반 dist (ubuntu, mint ..)를 사용하는 것처럼 가장하여 설치되었는지 확인하십시오.

(sudo) systemctl status dnsmasq

비활성화 된 경우 다음으로 시작하십시오.

(sudo) systemctl start dnsmasq

설치해야하는 경우 다음을 작성하십시오.

(sudo) apt-get install dnsmasq

다음 /etc/dnsmasq.conf과 같이 편집 할 도메인을 정의하려면

address=/example.com/127.0.0.1

* .example.com 해결

! 변경 사항을 적용하려면 dnsmasq를 다시로드해야합니다!

systemctl reload dnsmasq

참고 URL : https://stackoverflow.com/questions/20446930/how-to-put-wildcard-entry-into-etc-hosts

반응형