2016-10-03 4 views
0

Laravel Valet이 (가) 실행하는 임시 URL https://xxxxx.ngrok.io을 사용하여 로컬 사이트를 공유하려고했습니다. 내가 발렛 버전 1.1.22을 실행하면 :Laravel Valet 공유 URL 연결을 거부했습니다.

valet --version 
Laravel Valet version 1.1.22 

안전하게 ngrok URL은 연결이 거부에 연결됩니다. 안전하지 않은 경우 연결이 거부됩니다 (404는 보조 컴퓨터에서 실행중인 발렛에만 해당하므로 찾을 수 없음). 어느 쪽이든 또는 나중에 언급 할 DNS 문제를 해결합니다.

로컬로 Wi-Fi 네트워크와 PC에서 로컬로 작동합니다. 액세스 로그는 나에게 보여이 :

127.0.0.1 - [03/Oct/2016:08:57:06 +0300] "POST /server.php?doing_wp_cron=1475474226.5450510978698730468750 HTTP/1.1" 200 0 
127.0.0.1 - [03/Oct/2016:08:57:07 +0300] "POST /server.php HTTP/1.1" 200 47 
127.0.0.1 - [03/Oct/2016:08:59:09 +0300] "POST /server.php?doing_wp_cron=1475474348.8563120365142822265625 HTTP/1.1" 200 0 
127.0.0.1 - [03/Oct/2016:08:59:10 +0300] "POST /server.php HTTP/1.1" 200 47 

여전히 ~/.valet/로그인/access.log의에서이 로그에 거부 연결 관련 오류가 표시되지 않습니다. 오류 로그에는이 오류와 관련이없는 오래된 오류가 표시됩니다. 터미널의 Ngrook 창에 방금 301 개의로드가 영구히 이동했습니다.

GET/HTTP/1.1 
Host: site.dev 
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/601.7.8 (KHTML, like Gecko) Version/9.1.3 Safari/601.7.8 
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 
Accept-Encoding: gzip, deflate 
Accept-Language: en-us 
X-Forwarded-For: xx.xx.xx.xxx 
X-Forwarded-Proto: https 
X-Original-Host: xxxxxx.ngrok.io 

후 리디렉션 : (대리에 의해 생성) 완료 여기

HTTP/1.1 301 Moved Permanently 
Content-Type: text/html; charset=UTF-8 
Location: http://mysite.dev/ 
Server: Caddy 
Status: 301 Moved Permanently 
X-Powered-By: PHP/7.0.11 
X-Ua-Compatible: IE=edge 
Date: Mon, 03 Oct 2016 06:14:10 GMT 
Content-Length: 0 

Caddyfile : Ngrok 상태 사이트 http://localhost:4040/status 나를 보여

import /Users/jasper/.valet/Caddy/* 

    :80 { 
     fastcgi/127.0.0.1:9000 php { 
      index server.php 
     } 

     rewrite { 
      to /server.php?{query} 
     } 

     log /Users/jasper/.valet/Log/access.log { 
      rotate { 
       size 10 
       age 3 
       keep 1 
      } 
     } 

     errors { 
      log /Users/jasper/.valet/Log/error.log { 
       size 10 
       age 3 
       keep 1 
      } 
     } 
    } 

Ngrok이 너무 실행되고 (이후에 추가 tld 도메인이 .localhost로 변경되었습니다.) :

ps aux | grep ngrok 
jasper   1260 0.0 0.2 556735952 28692 s001 S+ 10:23AM 1:27.14 /Users/jasper/.composer/vendor/laravel/valet/bin/ngrok http -host-header=rewrite site.localhost:80 
root    1254 0.0 0.1 2463108 8964 s001 S+ 10:23AM 0:00.01 sudo -u jasper /Users/jasper/.composer/vendor/laravel/valet/bin/ngrok http -host-header=rewrite site.localhost:80 
jasper   3557 0.0 0.0 2432804 2096 s000 S+ 2:36PM 0:00.00 grep ngrok 

그래서 Caddy Server에 충돌하고 ngrok 상태가 표시됩니다. 그런 다음 리디렉션을 수행하여 연결 거부 또는 DNS 해결 문제가 브라우저에 발생합니다. 문제는 무엇입니까?

+0

http://stackoverflow.com/questions/37719851/pinging-test-dev-after-laravel-valet-install-returns-unknown-host#37730896에서 추천 한 '발렛 도메인 로컬 호스트'를 실행하고 모두를 다시 시작했습니다. 나는 TLD 이름 충돌에 대해 걱정했다. 그러나 아니, 그게 문제가 아니 었 .. – rhand

+0

또한 사파리는 때때로 '터널 www.xxxx.ngrok.io 찾을 수 없습니다'지금 알려줍니다. Chrome에 여전히 연결이 거부 된 것으로 표시됩니다. – rhand

+0

iOS Chrome의 최신 오류는 DNS 주소를 찾을 수 없다는 것입니다. Ngrok 로그 항목이 나타나지 않아도 사이트를 로컬로 방문하는 것조차 보이지 않습니다. – rhand

답변

0

결국 나는 WordPress가 퍼멀 링크 구조를 사용하여 추가 리디렉션을 작성하고 있음을 깨달았습니다. 따라서 퍼머 링크를 끄면 Ngrok를 사용하여 Laravel Valet WordPress 사이트를 외부 세계와 공유 할 수 있습니다. 완벽한 솔루션은 아니지만 적어도 하나는 작동하며 로컬 시스템에서 클라이언트를 실행중인 클라이언트에게 진행중인 작업을 표시 할 수 있습니다.