XAMPP* 로컬 웹 서버에서 가상 호스트 설정

이 자습서는 PHP 프로젝트에 대한 가상 호스트 설정을 안내합니다.나는 이 강좌를 두 부분으로 나눈다. 즉, 빠른 연습부터 시작하여, 시작부터 끝까지 몇 가지 절차만 있으면 된다.두 번째 부분에서 저는 이 강좌의 모든 절차를 깊이 있게 설명하여 당신이 하는 모든 것을 이해할 수 있도록 했습니다.나는 너희들 대다수의 사람들이 두 번째 부분을 읽을 것이라고 생각하지 않는다.
이러한 개념은 Windows 사용자 관점(경로, 파일 이름)에서 설명했습니다.만약 당신이 공교롭게도 unix/linux 사용자라면, 나는 당신이 당신의 물건이 어디에 있는지 알고 따라갈 수 있을 것이라고 믿습니다.

가상 호스트를 생성해야 하는 이유
당신의 PHP 응용 프로그램은 실제 URL 주소에서 실행될 수 있습니다. 예를 들어 danieldusek.com. 로컬에서 그것을 시뮬레이션하고 싶지만, localhost은 당신에게 적합하지 않습니다.당신이 원하는 것은 danieldusek.localhost입니다.아니면...응용 프로그램이 상대 경로를 잘 처리하지 못할 수도 있습니다.

xampp에서 가상 호스트를 빠르게 설치합니다
당신이 알고 있는지 확인하십시오:
  • PHP 프로젝트의 경로(예: c:\users\username\source\mysite)
  • 은xampp/lampp 설치 경로를 가리킨다. 예를 들어:c:\xampp
  • 다음 작업을 수행합니다.
  • 설치 디렉토리를 열고 xampp 폴더 아래의 httpd-vhosts.conf 파일을 찾습니다.
  • 선택한 텍스트 편집기에서 apache/conf/extra 파일을 엽니다.
  • 은 파일의 마지막에 다음 코드를 붙여넣지만 대체합니다.
  • httpd-vhosts.conf, 실제 PHP 프로젝트 경로,
  • c:\users\username\source\mysite에 자신의 이름을 추가(자신을 돕기 위해 실제 danieldusek.localhost TLD를 사용)
  • <VirtualHost *:80>
        DocumentRoot "c:\users\username\source\mysite"
        ServerName danieldusek.localhost
        <Directory "c:\users\username\source\mysite">
            Require all granted
        </Directory>
    </VirtualHost>
    
    선택한 디렉터리에서 실행할 스크립트를 찾을 수 있도록 로컬 서버를 설정했습니다. 언제든지 .localhost (또는 사용하기로 결정한 디렉터리) 을 찾는 요청을 받을 수 있습니다.
    파일을 저장한 후 APACHE 서버를 다시 시작해야 합니다.
    마지막 단계는 컴퓨터에서 모든 yourdomain.localhost을 로컬 호스트(컴퓨터)로 라우팅하도록 요청한다는 것입니다.
  • 폴더를 열고 yourdomain.localhost 파일
  • 찾기
  • 선택한 텍스트 편집기에서 파일을 관리자로 저장할 수 있는 c:\windows\system32\drivers\etc 파일을 엽니다. (저장할 때 Visual Studio 코드는 사용자에게 친근하게 관리자로 승격할 수 있음)
  • 의 맨 끝에 hosts 줄을 추가합니다.
  • 보관.
  • 현재 브라우저에서 hosts을 방문하면 항목을 볼 수 있습니다.그렇지 않으면, 설정이 파괴되거나, 자신이 무엇을 하고 있는지 알 수 없습니다.본 강좌의 두 번째 부분을 계속해 주십시오. 저는 이 개념들을 더욱 상세하게 설명할 것입니다.

    한 걸음 한 걸음 실제 발생한 일을 분해하다
    나는 이 강좌의 모든 개념과 이와 관련된 모든 내용을 설명하는 실험을 하기로 결정했다. 흔히 볼 수 있는 문제의 해답을 제공하는 것이 아니라.만약 나의 가설이 정확하고, 나의 해석이 표준에 부합된다면, 너는 반드시 스스로 너의 문제를 해결할 수 있어야 한다.

    이 모든 것은 어떻게 작동합니까?
    XAMPP 또는 유사한 패키지가 이미 장치에 설치되어 있다고 가정해 보겠습니다.이렇게 하는 것은 PHP나 다른 지원되는 언어로 프로그램을 개발하고 싶기 때문입니다.
    XAMPP 패키지는 웹 요청을 처리하는 방법을 알고 PHP 스크립트를 설명하며 웹 요청을 보내는 사용자에게 내용을 제공하는 아파치 서버와 함께 제공된다.apache 서버가 사용자의 요청을 처리할 때 하는 일은 요청이 보낸 영역을 검사하는 것입니다.이 점을 명심해라.도메인 이름이 유효하든 존재하지 않든
    아파치 웹 서버가 컴퓨터에서 실행될 때 브라우저의 127.0.0.1 yourdomain.localhost (또는 그 yourdomain.localhost 별명) 을 방문하여 물어볼 수 있습니다.또는, 만약 공교롭게도 인터넷에 연결되고 컴퓨터에 공공 IP를 분배한다면, 다른 사람들도 아파치 웹 서버에 요청을 보낼 수 있습니다. 그들은 127.0.0.1/localhost이 아니라 공공 IP를 사용할 것입니다.
    XAMPP/web 서버를 설치하는 동안 서버가 실행될 포트를 선택할 수 있습니다.관례에 따르면 http 데이터는 포트 localhost에 제공되고https 데이터는 포트 127.0.0.1에 제공된다.이 약속도 마찬가지로 중요하다. 이 포트들은 브라우저가 http 요청을 할 때 목표 서버의 포트 80에 도달하는 것으로 알려져 있다.https와 443도 마찬가지다.http와https 데이터로 각각 다른 포트를 사용하려면 주소에 지정해야 합니다.
    예시 장면: 포트 80의 http 데이터를 처리하기 위해 서버를 설치했습니다.컴퓨터에서 서버에 액세스하려면 443에 액세스해야 합니다.
    이 포트들은 변경할 수 있지만, 이렇게 하는 과정은 본 강좌의 범위를 넘어설 것이다.이 stack overflow post은 어떻게 이 점을 해냈는지 잘 설명한다.
    요컨대, 이 강좌를 따르면 두 가지를 실현할 수 있습니다.
  • 81에서 지정한 영역에 대한 요청을 처리할 때 스크립트를 어디서 찾는지 알려 줍니다.
  • 은 컴퓨터에서 http://127.0.0.1:81에서 httpd-vhosts.conf으로 다시 요청할 것을 알려줍니다. 이것은localhost라고도 부릅니다.

  • 편집 yourdomain.localhost은 어떻게 작동합니까?
    파일에 첨부된 코드 세그먼트를 살펴보겠습니다.
    <VirtualHost *:80>
        DocumentRoot "c:\users\username\source\mysite"
        ServerName danieldusek.localhost
        <Directory "c:\users\username\source\mysite">
            Require all granted
        </Directory>
    </VirtualHost>
    
    첫 번째 행의 포트 번호는 127.0.0.1입니다.상기 http=80약정의 부작용으로 다시 80이다.다른 포트에 설치되어 있으면 업데이트가 필요합니다.
    그 앞에 있는 별표는 웹 서버에 모든 주소가 일치한다는 것을 알려 줍니다.웹 서버에 여러 개의 이름이 있는 주소가 있고, 요청이 설정 파일의 다른 주소와 일치하지 않는 상황에서 첫 번째 주소로 되돌아오기를 원할 때 이 옵션을 사용할 수 있습니다.자료 출처: apache.org documentation.httpd-vhosts.conf은apache가 사용하는 설정 언어의 표시로 그 중의 모든 내용을 주어진 디렉터리와 모든 하위 디렉터리와 파일에 사용해야 한다는 것을 나타낸다.그 안에 포함된 것을 지령이라고 한다.자료 출처: apache.org documentation
    실제 사용하는 명령 <VirtualHost *:80>은 아파치 서버에 이 페이지를 요청한 IP에 제공하는 것을 거부해서는 안 된다고 알려 줍니다.
    대부분의 경우 공용 IP가 없는 로컬 네트워크에서따라서 이 광범위한 명령을 사용하면 같은 로컬 네트워크의 모든 사용자가 웹 서버에서 페이지를 요청할 수 있습니다.만약 네가 공공 IP 주소를 가지고 있다면 인터넷상의 누구든지 이렇게 할 수 있다.걱정되는 사항은 read the apache documentation으로 전화하고 <Directory ...> 명령을 확인하십시오.Require all granted은 자명하다.해당 도메인에 대한 요청은 Require ip [IP] 아래에 제공된 폴더로 라우팅됩니다.
    ServerName yourdomain.localhost TLD를 사용해야 하는 이유
    짧은 대답: 기존의 TLD를 사용해서는 안 되기 때문이다.
    세부 응답: 향후 생성될 TLD는 제어할 수 없지만 개인 테스트에 사용할 수 있는 도메인이 나열된 RFC2606, page 2을 참조하십시오.DocumentRoot, .localhost, .test, .example입니다.
    .invalid 파일 업데이트는 어떻게 작동합니까?
    이 지역 설정의 두 번째 부분에서 우리는 .localhost 파일을 편집하고 그 끝에 hosts 줄을 추가했다.이 선은 hosts역을 127.0.0.1 yourdomain.localhostip(컴퓨터의 ip, 로컬 호스트)에 비추었다.어떤 필드와 IP 주소를 거기에 두면 같은 방식으로 작업을 할 수 있습니다.
    이것은 DNS(Domain Name System)의 작동 방식과 매우 유사합니다.DNS는 사용자가 액세스하려는 웹 사이트를 호스팅하는 컴퓨터의 IP 주소에 도메인 이름을 매핑하는 프로토콜입니다.사용자는 yourdomain.localhost을 쉽게 입력할 수 있으며, 127.0.0.1에 있다는 것을 기억하지 않아도 된다.그것 또한 나로 하여금 현재 다른 주소로 가는 것을 알려주지 않고 호스트 공급자를 유연하게 변경할 수 있게 한다.danieldusek.com 파일은 우선 순위가 높은 운영 체제에 대한 로컬 프롬프트입니다.89.221.213.23 파일에서 도메인을 찾으면 DNS 서버에서 대상 IP 주소에 대한 정보를 가져오지 않고 지정된 도메인을 사용합니다.
    이렇게

    좋은 웹페이지 즐겨찾기