IT

Mac OS X Lion에서 localhost / virtualhost의 느린 확인 /로드 (2 ~ 3 초 지연)를 제거해야합니까?

lottoking 2020. 9. 4. 07:43
반응형

Mac OS X Lion에서 localhost / virtualhost의 느린 확인 /로드 (2 ~ 3 초 지연)를 제거해야합니까?


Mac OS X Lion (2012 년 1 월에 구입 한 새로운 macbook air)에서 개발 환경을 설정 한 이후 처음에는 가상 호스트로의 해석이 매우 느리지 만 (약 3 초) 그 이후에는 계속됩니다.

몇 분 동안 그대로 두었다가 다시 장전하면 첫 장전이 (다시) 고통스럽게 느려집니다. 많은 것이 캐시되고있는 것입니다.

.local TLD를 사용하지 않습니다.

내 설정 : Apache 2-MySQL-PHP 설치 및 활성화-로컬 호스트 용으로 만든 가상 호스트 몇 개 추가

내 / etc / 호스트 :

127.0.0.1       localhost
255.255.255.255 broadcasthost
::1             localhost
fe80::1%lo0     localhost
127.0.0.1       myproject.dev
::1             myproject.dev
fe80::1%lo0     myproject.dev

username.conf에 내 가상 호스트 설정 :

NameVirtualHost *:80

<Directory "/Users/myusername/Sites/">
    Options Indexes MultiViews
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>

<VirtualHost *:80>
    ServerName localhost
    DocumentRoot /Users/myusername/Dropbox/dev_envs/
</VirtualHost>
<VirtualHost *:80>
    ServerName myproject.dev
    DocumentRoot /Users/myusername/Dropbox/dev_envs/myprojectname
</VirtualHost>

나는 똑같은 문제가 그것은 나를 미치게합니다!

localhost에 대한 모든 호스트 파일 항목을 다음과 같이 한 줄에 도시십시오.

127.0.0.1 localhost myproject.dev myotherproject.dev
::1 localhost
fe80::1%lo0 localhost

나를 위해 매력처럼 일했습니다. 라이온의 버그처럼.


5 초 조회를 유발하는 ".local"로 끝나는 사이트에 대해 10.7. *에서 10.8.4까지의 또 다른 문제가 있습니다. 세부 정보 및 솔루션 제공 : Bram (us) Van Damme (다음 링크) :

http://www.bram.us/2011/12/12/mamp-pro-slow-name-resolving-with-local-vhosts-in-lion-fix/

"기본적으로 .local로 끝나는 호스트 이름은 네트워크 환경 설정에서 DNS 서버 항목을 쿼리하는 대신 Bonjour 호스트로 취급됩니다.

이 문제를 해결 비용 (각 가상 호스트의 이름을 변경해야 할 필요없이) / etc / hosts 파일에 각 가상 호스트에 대한 IPv6 항목을 추가해야합니다. "

::1 mysite.local
fe80::1%lo0 mysite.local
127.0.0.1 mysite.local

나는 라이온 같은 곳 문제를 집었습니다.

이상하게도 내 해결책은 Jeremy와 반대였습니다. / etc / hosts에 한 줄에 someproject.dev 항목이 많이 있습니다. 처음으로 사이트를로드하는 데 1 분 정도 걸렸습니다. 5 초 내로 다시 사용하면 매우 빠르지 만 훨씬 길어지고 1 분 정도 걸립니다. 나는 모든 종류의 것, mysql 연결, Ruby 버전, Rails 버그, Apache, Phusion Passenger를 의심했습니다. 마침내 콘솔을보고 DNS 조회가 시도되고 있다는 것을 깨달을 때까지.

그래서 나는 그들 모두를 별도의 줄에 넣었습니다.

127.0.0.1 localhost

127.0.0.1 myproject.dev

127.0.0.1 myotherproject.dev

그리고 갑자기 모든 것이 다시 부러졌습니다. 내 두 컴퓨터에서 동일합니다.


IPv6 :: 1에 대해 동일한 호스트를 지정하면 도움이되었습니다.

127.0.0.1 something.local.mydomain.org
::1 something.local.mydomain.org

localhost가있는 줄에 IP v6 항목이 없는지 확인하십시오.

::1 localhost

IP v6 항목은 별도의 줄에 표시됩니다.

fe80::1%lo0 here and_here

지금은 때때로 정말 빠르지 만 오래된 지연이 다시 나타나는 드문 예외가 있습니다. 그러나 다른 이유에 근거 할 수 있습니다.


OSX El Capitan에서 나를 위해 일한 것은 IPv4 항목 바로 위에 중복 된 IPv6 항목을 만드는 것이 었습니다.

fe80::1%lo0 demo.test.dev
127.0.0.1   demo.test.dev

호스트 이름이 파일의 시작 부분에 정의되어 있는지 확인하면 차이가 생겼습니다. 기본적으로 127.0.0.1 localhost 행은 이미 시작 부분에 있으며 동일한 행에 항목을 추가하기 만하면됩니다.


동일한 문제가 발생했는데 LAN에서 IPv6를 활성화했지만 네트워크와 ISP간에 IPv6를 올바르게 구성하지 않았기 때문에 발생했습니다. 분명히 IPv6 DNS 서버는 클라이언트가 둘 다 제공 할 때 IPv4 DNS보다 우선합니다. 클라이언트가 IPv6 DNS에 도달 할 수 없거나 누락 된 것을 발견하고 IPv4 DNS로 폴백하는 데 몇 초 (모든 시도에서)가 걸렸습니다.


나는이 같은 문제가 있었고 마침내 같은 줄에 동일한 호스트 항목이 두 번 있다는 것을 깨달았습니다.

예 :

127.0.0.1 localhost host1 host2 host3 host4 host5 host1 host6

동일한 호스트의 두 번째 인스턴스 (위의 예에서는 host1)를 제거했으며 상황이 즉시 빨라졌습니다.

내가 이것을 발견했을 때 약간 어리석은 느낌이 들었지만 같은 줄에 10 개의 긴 호스트 이름이 있고 자주 추가 / 제거하면 간과 될 수 있습니다.


나를 위해 한 트릭은

127.0.0.1 locahost

호스트 파일의 첫 번째 줄에 있습니다.

내 모든 가상 호스트에서 데이터베이스를 사용하는 호스트 만 느 렸습니다. 데이터베이스 연결을 위해 "localhost"를 찾는 과정이 느려졌 기 때문이라고 생각합니다. "localhost"가 아닌 가상 호스트의 주소 만 추가했기 때문입니다. 이제 모든 것이 다시 부드럽습니다. :)


나는 이것도 많이 만났다. 나는 IPv4와 IPv6에 대해 하나씩 두 줄에 정의 된 가상 호스트를 많이 가지고 있습니다. 목록에서 첫 번째로 확인하려는 호스트를 이동하면 속도가 빨라졌습니다.

127.0.0.1 faster.example.dev host1.example.dev host2.example.dev host3.example.dev host4.example.dev host5.example.dev host6.example.dev
::1 faster.example.dev host1.example.dev host2.example.dev host3.example.dev host4.example.dev host5.example.dev host6.example.dev

참고 : 저는 Windows와 XAMPP를 사용하고 있지만 문제를 조사하는 동안 많은 사람들이 Windows와 Mac에서 동일한 문제를 겪었습니다. 나를 위해 작동하는 솔루션을 찾기 위해 몇 시간을 보냈기 때문에이 질문을 찾는 사람을 위해 대답하십시오.

이들 중 어떤 것도 - 나는 IPv6의 라인을 포함하여 또한, 한 줄에 모든 호스트를 넣어 중복 호스트와 버추얼 호스트를 제거, 등 같은 문제에 대한 많은 솔루션을 시도했다 혼자가 성공적 없었다 있습니다.

지금까지 나를 위해 작동 하는 유일한 솔루션 은 모든 솔루션의 조합입니다.

  • mysite에서 사용중인 도메인 변경. mysite에 로컬 . dev . @Cleverlemming의 답변에서 영감을 얻었습니다 .
  • IPv6 라인 포함.
  • 중복 가상 호스트 및 호스트 제거 (내가 주석 처리).

내 호스트 파일에서 내 호스트는 현재 별도의 줄에 있으며 지금까지 문제가 해결 된 것 같습니다.

이 문제를 해결하려는 모든 사람에게 행운을 빕니다. 추가 할 정보가있는 사람이 있으면 그렇게하세요. 이것은 알려진 원인이나 해결책이없는 많은 사람들에게 영향을 미치는 문제인 것 같습니다.

참고 URL : https://stackoverflow.com/questions/10064581/how-can-i-eliminate-slow-resolving-loading-of-localhost-virtualhost-a-2-3-secon

반응형