2014-09-02 5 views
0

내 서버의 IP 주소를 가리키는 이상한 도메인이 하나 있습니다. 가끔 DNS가 혼란스러워서 내 도메인이 아니라 도메인에 연결되어 있다고합니다.Nginx가 외부 도메인을 내 도메인으로 리디렉션

나는 DNS 내 컴퓨터에 가리키는 레코드를 제거하기 위해 도메인 소유자 및 도메인 등록 기관에 연락 시도했지만 그들은 지금은 리디렉션하려고 모든

에 도움이되지 않았다

:

www.foreigndomain을 .COM

www.foreigndomain.com

www.myowndomain.com

그렇게 할 때 누군가 유형 또는 개방에 그것은 www.foreigndomain.com에서 내 콘텐츠를 제공하는 대신 내 원래 도메인으로 리디렉션합니다.

나는 nginx.conf에 이것을 추가하려고 :

server { 
    server_name .foreigndomain.com; 
    rewrite^http://www.myowndomain.com$request_uri? permanent; 
} 

그러나 이것은 내가 왜 아주 확실하지 않다, 리디렉션 루프를 만듭니다.

어떻게해야합니까?

답변

2

www.myowndomain.com는, 리디렉션을 수행하는 동일한 서버와 일치하는 서버 이름을 캡처하는 다른 서버를 만들어이 문제를 해결하기 때문에 리디렉션 순환 오류가 발생

server { 
    server_name .foreigndomain.com; 
    return 301 http://www.myowndomain.com$request_uri; 
} 
server { 
    server_name www.myowndomain.com; 
    location/{ 
    #config here 
    } 
} 

하는 경우 이미 서버 이름이 myowndomain.com 인 경우 www 변형을 추가해야합니다.

server { 
    server_name myowndomain.com www.myowndomain.com; 
    location/{ 
    # config here 
    } 
} 
+0

"myowndomain.com 서버 이름에 www 변형을 추가해야합니다." -이게 속임수 였어. 이 문제에 문제가 없다면 왜 www 변종이 필요한지 설명해 주시겠습니까? – user1880779

+0

nginx에서 (그리고 나는 대부분의 웹 서버가 아니라고 생각한다.)'www.domain.com'은'domain.com'과 다르다. 예를 들어'domain.com'을' www.domain.com'을 사용하여 동일한 서버에 다른 이름을 사용하려면 같은 줄의 공백으로 연결하십시오. –

0

하면이 재 변형을 시도해보십시오

server { 
    server_name .foreigndomain.com; 
    return 301 http://www.myowndomain.com$request_uri; 
} 
+0

같은 것. 리디렉션이 발생하지만 myowndomain.com을 열려고하면 "이 웹 페이지에 리디렉션 루프가 있습니다."라는 메시지가 나타납니다. 방금 nginx.conf에 넣을 수 있습니까? 아니면 사이트 사용 폴더에 새 구성을 만들 수 있습니까? – user1880779

+0

http {} 섹션의 어느 곳에 나 넣을 수 있으며 "sites-enabled"가 더 좋습니다. 리디렉션이 작동하면 규칙이 올바르지 만 다른 도메인 설정 (www.myowndomain.com)에 문제가있는 것 같습니다. –

관련 문제