2012-05-21 1 views
0

나는 포트 8080에서 실행되는 nginx를 포트 80에서 실행되는 바니시 뒤에 있습니다. 내 서버에는 하나의 웹 사이트 만 있습니다. 문제는 단지 url 대신 서버의 IP 주소로 액세스 할 수 있다는 것입니다. 구글이 색인을 생성하고 중복 콘텐츠에 대한 문제를 두려워합니다.nginx + 바니시 리디렉션 서버 IP를 URL로

어떻게 IP 주소로 이동하는 요청을 내 URL로 리디렉션합니까? 이 코드를 시도했지만 루프 리디렉션 오류가 발생했습니다.

server { 
    listen 180.10.1.1:80; 
    server_name 180.10.1.1; 
    rewrite .* http://www.mysite.com$request_uri permanent; 
} 

감사

편집 : VCL

server { 
    listen 8080; 
    server_name site.com; 
    access_log /var/log/nginx/localhost.access.log; 
    error_page 502 /502.html; 

## Default location 
    location/{ 
     root /home/site.com/public_html; 
     index index.php; 
... 
+0

당신의 나머지 VCL에 붙여 넣을 수 있습니까? – Tom

+0

원래 게시물에 추가했습니다. – user1394013

+0

안녕하세요, VCL을 붙여 넣었습니까, 아니면 nginx.conf입니까? – Tom

답변

1

이 문제를 해결하는 방법은 몇 가지가 있습니다 나머지. Nginx가 서버 IP 주소를 방문했을 때 Nginx가 site.com에도 서비스를 제공하는 경우 Nginx 설정을 조정하여 IP 주소로 지정된 모든 요청이 site.com으로 리디렉션되도록해야합니다. 그런 다음 Nginx와 Varnish를 다시 시작하십시오.

+0

내가 그랬지만 내가 쓴 것처럼, 그것은 작동하지 않았고, 리디렉션 루프로 끝났다 – user1394013

1

확인 수신 문제에서 "180.10.1.1 :"이었습니다. 나는 단지 거기에 계속 "듣고 80"지금은 잘 작동 :)

+0

대답으로 정답을 표시해 주시겠습니까 :) – Tom