Mac OSX에서 호스트 이름의 별칭을 지정하는 방법


24

간단히 말해서 브라우저를 열고 열 수는 local.example.com있지만 실제로로드됩니다.http://localhost/path/to/example.com/

Mac OSX 10.5를 사용하고 있으며 터미널로 손이 더러워지는 것을 두려워하지 않습니다. :)

로컬 서버로 Apache를 사용합니다.


웹 페이지를 외부에 제공하려고합니까, 아니면 local.example.com URL 만 컴퓨터에서 작동 할 것으로 기대 하십니까?
Stephen Jennings

내 기계 만 작업중 인 웹 사이트의 로컬 사본에 대한 전체 파일 경로를 기억하고 타이핑합니다.
Austin Hyde

답변:


31

분명히하기 위해 http://local.example.com 이 리터럴 웹 페이지 http : //localhost/path/to/example.com 을 실제로 로드 하려는 가정하에 이것을 기반으로 합니다 . 즉,이 시스템에서만 작동합니다. 반면에 Mac OS X 컴퓨터를 사용하여 웹 페이지를 외부에 제공하려는 경우에는 다른 질문입니다.

먼저 /etc/hosts파일에 새 줄을 추가 하십시오.

127.0.0.1   local.example.com

명령을 실행 sudo nano /etc/hosts하여이 행을 끝에 추가 한 다음 Ctrl-X, Y를 눌러 저장하십시오.

실제로 http://local.example.com 주소 를 http : //localhost/path/to/example.com/으로 리디렉션하는 방법 은 사용중인 웹 서버에 따라 다릅니다. Apache를 사용한다고 가정합니다.

당신이 사용자의 브라우저가 local.example.com을 보여주고 싶은 경우에, 당신은 설정하려는 virual 호스트httpd.conf파일은 다음과 같은 것을해야한다 :

<VirtualHost *:80>
ServerName local.example.com
DocumentRoot /www/path/to/example.com
</VirtualHost>

반면에 웹 브라우저의 위치 표시 줄이 http : //localhost/path/to/example.com/ 으로 변경되도록하려면 대신 mod_rewrite를 사용하여 경로 재 지정을 작성하십시오 .

RewriteCond %{HTTP_HOST}   !^local\.example\.com [NC]
RewriteCond %{HTTP_HOST}   !^$
RewriteRule ^/?(.*)         http://localhost/path/to/example.com/$1 [L,R,NE]

이것은 특정 경로로 가지 않을 것입니다
John T

@ 존 당신이 맞아요.
Stephen Jennings

원하는 "별칭"이 https://localhost/path/to/example.comHTTPS, 그렇지 않은 HTTP경우이 솔루션이 여전히 적용됩니까?
케빈 메러디스

@KevinMeredith 불가능합니다. 브라우저는 HTTPS와 대화하고 있음을 알아야합니다. Apache에서는 HTTP 302 리디렉션을 사용하여 가능할 수 있습니다 Redirect. httpd.apache.org/docs/2.4/mod/mod_alias.html#redirect
Beetle

VPN을 사용하는 경우 일반적으로 / etc / hosts를 덮어 씁니다.
Jonathan Neufeld
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.