2012-05-24 3 views

답변

6

내가이 서버가 주도하는 협상으로 이어질 요청 헤더 필드를 지정 Vary을 사용하는 동안 301을 보낼 것이다 결정.

그래서, 사용자 에이전트 헤더 필드는 요청이 모바일 장치에 의해 만들어진 여부를 구별하는 데 사용됩니다 가정, 나는 이것을 사용합니다 :

HTTP/1.1 301 Moved Permanently 
Vary: User-Agent 
Location: http://m.example.com/... 
+0

Google 가이드 라인은 "vary"헤더가 301 응답이 아닌 200 응답에 있어야한다고 제안합니다. https://developers.google.com/webmasters/smartphone-sites/redirects – Spongeboy

+1

@Spongeboy "사용자 에이전트에 따라 콘텐츠를 제공하거나 사용자를 리디렉션하는 경우 (즉, 응답이 다양 할 경우) 서버 *를 * 자동 리디렉션을 제공하는 URL에 Vary HTTP 헤더를 보냅니다. "강조된"또한 "유의하십시오. – Gumbo

+0

잘 발견되었습니다! 'vary'를 사용하는 것이 가장 우아한 솔루션 인 것처럼 보이지만 IIS URL Rewrite (리디렉션에 사용하고있는 기능)에서 구현하기가 어렵습니다. – Spongeboy

4

임시 리디렉션 (302 또는 307) 이것을 위해 충분해야합니다. 서버가 HTTP 301 또는 302 상태 코드로 리디렉션 경우이 목적을 위해 Google guidelines for smartphone site redirections states-

, 그것은 중요하지 않습니다. 이와 같이

, 302 아마도 바람직

307 위에 가이드 라인은 "변화"는 헤더 (200)의 대응 부분되어야한다고 제안한다.

+0

메신저이 게시물을 만들었으므로 변경된 것일 수 있습니다.하지만 Google 가이드 라인에서 작성한 견적 뒤에 가능한 경우 Google이 302를 선호하는 다른 문장이옵니다. "이 목적을 위해 서버가 HTTP 301 또는 302 상태 코드로 리디렉션하는지 여부는 중요하지 않지만 가능한 경우 항상 302를 사용하는 것이 좋습니다." – naw103

+0

구글 가이드 라인 게시를위한 Upvote! – Lukas