사용자 지정 HttpModule 내에 동적 301 리디렉션 루틴을 설정했습니다. 코드는 쿼리 문자열을 구문 분석하고, 설정 및 응용 프로그램 특정 논리를 사용하여 들어오는 URL을 받아 다음과 같은 코드를 사용하여 새 SEO 친화적 인 URL로 리디렉션 : 레거시 URL을 입력하면이 벌금과 멋쟁이 작동ASP.NET 3.5, googlebot, 301 리디렉션 "HTTP 헤더를 보낸 후 리디렉션 할 수 없습니다."
if (HttpContext.Current.Response.IsRequestBeingRedirected)
return;
if (!HttpContext.Current.Response.IsClientConnected)
{
response.End();
return;
}
response.Redirect(newLocation, false);
response.Status = "301 Moved Permanently";
response.StatusCode = 301;
을 웹 브라우저에서 직접. 그러나 내 이벤트 로그에 googlebot (66.249.71.11)에서 동일한 URL에 액세스 할 때 "HTTP 헤더가 전송 된 후 리디렉션 할 수 없습니다"HttpExceptions가 표시됩니다.
저는 문제가 무엇인지 해결하는 방법을 놓치고 있습니다.
Matthew - 불행히도 코드 결과는 본질적으로 같은 오류입니다. 다시 말하지만, 특히 이상한 점은 googlebot이 사이트를 공격 할 때만 발생한다는 것입니다. –
프로세스 초기에 응답 스트림에 아무 것도 쓰지 않습니까? 어떤 오류가 발생합니까? 내 메서드로 Response.Redirect를 사용하면 안됩니다. –