0

URL 재 작성/SEO 최적화를 위해 301 리디렉션을 구현하려고합니다. VB.NET 웹 사이트의 모듈 내에서 이러한 리디렉션을 수행하고 있습니다.301 응답 헤더를 사용하여 리디렉션이 제대로 리디렉션되지 않음

헤더에 새 위치를 지정하면 완전히 대체하거나 상대 경로를 사용하지 않고 항상 기존 URL에 새 위치를 추가합니다.

httpContext.Response.Status = "301 Moved Permanently" 
httpContext.Response.AddHeader("Location", "http://site.com/store/books") 
httpContext.Response.End() 

내가 상대 ~/경로를 사용하려고했습니다 여기

http://site.com/productList.aspx?id=123&fid=123&mid=123http://site.com/store/books/ 

내가 리디렉션을 위해 사용하고 코드입니다 : 그래서 그 대신 편안한 URL의 난 둘의 조합을 얻을 성공하지 못했습니다. 내가 잘못하고 있다고 생각하는 것은 매우 간단합니다. 도와주세요! 미리 감사드립니다.

답변

1

ASP.NET이 이미 응답 버퍼를 채우기 시작한 후에이 작업을 수행하려고합니까? Response.Clear()를 먼저 호출 해보십시오.

+0

Response.Clear 메서드를 시도하고 그 메서드가 작동하는지 확인합니다. – letsgetsilly

1

게시 한 코드가 정상적으로 작동했습니다.

RedirectPermanent 메서드를 사용해 볼 수 있습니다.

+0

이 코드는 과거에 저에게 도움이되었습니다. 차이점은 요청주기의 초기에 모듈에서 사용하고 있지만 요청주기에 익숙하지 않아 원인을 알 수 없다고 생각합니다. 귀하의 제안 주셔서 감사합니다,하지만 불행히도 나는 .net 3.5에있어. – letsgetsilly

관련 문제