XAMPP* 로컬 웹 서버에서 가상 호스트 설정
이러한 개념은 Windows 사용자 관점(경로, 파일 이름)에서 설명했습니다.만약 당신이 공교롭게도 unix/linux 사용자라면, 나는 당신이 당신의 물건이 어디에 있는지 알고 따라갈 수 있을 것이라고 믿습니다.
가상 호스트를 생성해야 하는 이유
당신의 PHP 응용 프로그램은 실제 URL 주소에서 실행될 수 있습니다. 예를 들어
danieldusek.com
. 로컬에서 그것을 시뮬레이션하고 싶지만, localhost
은 당신에게 적합하지 않습니다.당신이 원하는 것은 danieldusek.localhost
입니다.아니면...응용 프로그램이 상대 경로를 잘 처리하지 못할 수도 있습니다.xampp에서 가상 호스트를 빠르게 설치합니다
당신이 알고 있는지 확인하십시오:
c:\users\username\source\mysite
)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.localhost
ip(컴퓨터의 ip, 로컬 호스트)에 비추었다.어떤 필드와 IP 주소를 거기에 두면 같은 방식으로 작업을 할 수 있습니다.이것은 DNS(Domain Name System)의 작동 방식과 매우 유사합니다.DNS는 사용자가 액세스하려는 웹 사이트를 호스팅하는 컴퓨터의 IP 주소에 도메인 이름을 매핑하는 프로토콜입니다.사용자는
yourdomain.localhost
을 쉽게 입력할 수 있으며, 127.0.0.1
에 있다는 것을 기억하지 않아도 된다.그것 또한 나로 하여금 현재 다른 주소로 가는 것을 알려주지 않고 호스트 공급자를 유연하게 변경할 수 있게 한다.danieldusek.com
파일은 우선 순위가 높은 운영 체제에 대한 로컬 프롬프트입니다.89.221.213.23
파일에서 도메인을 찾으면 DNS 서버에서 대상 IP 주소에 대한 정보를 가져오지 않고 지정된 도메인을 사용합니다.이렇게
Reference
이 문제에 관하여(XAMPP* 로컬 웹 서버에서 가상 호스트 설정), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/dusekdan/setting-up-virtual-hosts-on-xampp-local-webserver-iij텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)