2012-11-29 3 views
23

을, 내가 가진 :서버 _ 듣는 nginx를 만들려면 : 내의 nginx의 conf 파일에서 포트

listen  80; 
    server_name $hostname; 

을 내가 NETSTAT 할 나는 그것이 0.0.0.0:80

에서 수신 대기하는 것을 볼 수 있지만 경우 내가 뭘 원하는지, nginx는 $ hostname : 80을 듣고, 그것을 할 수있는 방법이 구성되어 있습니까?

지금까지 성공하지 못한 다른 설정을 시도했습니다. 당신의 도움을 주셔서 감사합니다.

답변

36

server_namedocs 지시어는 가상 호스트를 식별하는 데 사용되며 바인딩을 설정하는 데 사용되지 않습니다.

netstat은 nginx가 모든 IP의 연결을 허용한다는 것을 의미하는 0.0.0.0:80을 수신한다는 것을 알려줍니다. 당신은 IP의의 nginx가 결합 변경하려면

, 당신은 listendocs 규칙을 변경해야합니다. 그들은 심지어 nginx를 때리지 마세요 (이런 식으로

listen 127.0.0.1:80 

, 로컬 호스트에서 오는되지 않은 요청이 삭제됩니다 : 당신이 localhost에 바인딩 할 nginx를 설정하려면
그래서, 당신은에 그것을 바꿀 것).

+0

localhost에 수신 대기 IP를 지정하는 데 어떤 이유가 있는지 묻고 싶습니다. 즉, 요청을 출력 세계에서 수신하기를 원하지 않습니까? – ransh

+0

예, 그것이 이유입니다. 지역 개발을 위해서는 일반적으로 그렇습니다. 원격 서버에서는 "외부"단어가 사이트에 액세스하는 것을 막기 위해 이와 같은 작업을 수행 할 수 있습니다. 예를 들어 서버에 대한 SSH 액세스 권한이있는 사용자 만 액세스 할 수 있습니다. –