Microsoft MVP성태의 닷넷 이야기
[질문] HTTP 모듈/핸들러 또는 RewriteURL 관련입니다. [링크 복사], [링크+제목 복사],
조회: 11236
글쓴 사람
정준명 (twiny at naver.com)
홈페이지
첨부 파일
 

안녕하세요? 올만에 인사드림과 동시에 질문도 드립니다.

기획에서 난해한 요구사항이 들어와서 여기저기 알아보는 중입니다.

네이버 블로그에 구현이 된걸 만들어야하는데, 가령 http://blog.naver.com/cosphoto/140016565682 라는 URL을 타이핑하고 들어가면
주소창에 주소가 안바뀌고 바로 그 글의 컨텐츠가 뜹니다.

저도 http://route.wholsee.com/twiny/3213213213 라는 URL을 사용자가 치고 들어오면 이 URL을 유지하면서 페이지를 뿌려야하는거죠.

예전에는 404 에러 리디렉션으로 속 편하게 구현했는데 이 경우 주소창 URL이 바껴버리죠.

자료를 뒤져본 결과

1. System.Web.HttpContext 클래스의 RewritePath()를 이용하면 주소창 URL을 안바꾸고 다른 페이지로 이동가능하다.
2. HTTP Handler를 이용하면 커스텀 페이지 처리가 가능하지만 확장자 매핑이 필요하므로 사용 불가
3. HTTP Module를 이용하면 페이지 처리 중간에 끼워넣을 수는 있는데, 폴더와 파일이 만들어져있어야해서 사용 불가

정도로 요약이 되네요. 3번은 왠지 미심쩍어서 다시 한번 테스트 해보려고 하는 중입니다.
- 즉 /UserID/NNNNNNNN 형식을 만족하는 RawURL에 대해 RewritePath()를 처리하면 404 에러페이지로 안가고 중간에 가로채는게 가능하지
않을까하는거죠.

혹시 이와 비슷한 요구사항을 처리해보신 경험이 있으면 조언 부탁드립니다. 그럼








[최초 등록일: ]
[최종 수정일: 8/30/2005]


비밀번호

댓글 작성자
 



2005-08-30 04시40분
[정준명] 음... 3번은 404로 바로 빠져버려서 모듈 자체까지 오지도 못하네요.
[guest]
2005-08-31 09시06분
[정준명] 확장자 없이 숫자로만 해달라는 요구사항때문에 다 포기하고 404에러 처리페이지에서 /userid/XXXXXXXXX 패턴의 URL일 경우 체크해서 Server.Transfer로 이동시키는 방법으로 해결 했습니다.

이 경우 주소창 주소는 바뀌지 않으니까 일단 성공은 성공인데 왠지 아쉽네요. ^^;
[guest]
2005-09-01 08시57분
ISAPI Filter를 만드셔야 합니다.
아래의 토픽이 해답이 되실 겁니다. ^^

http://www.codeproject.com/isapi/isapiredirector.asp
techsharer
2005-09-01 11시00분
[정준명] VB쓰다가 닷넷쓰면서 제약이 많이 없어졌는데 여전히 VC++을 못하니 답답한 일이 생기네요. ^^ 진작 좀 배워둘걸...
[guest]

[1]  2  3  4  5  6  7  8  9  10  11  12  13  14  15  ...
NoWriterDateCnt.TitleFile(s)
5968orion4/30/2025220winform DataSet.xsd의 암호화 된 ConnectionString 사용 질문 [1]
5966GM B4/30/2025241C#과 python 연동 질문 [1]
5962SunN...4/21/2025553Contextmenu margin 조절 [1]파일 다운로드2
5961GM B4/10/2025947winform => wpf 마이그레이션 방법 질문 [4]파일 다운로드1
5960Kim ...4/9/20251209안녕하세요.. 혹 AI & C# 에 대해서도 다루시나요? [1]
5959vict...2/10/20251900비주얼 스투디오 CLR 코드 탑색 질문입니다. [1]
5958Supe...1/18/20252875C#으로 DLL을 만들때 WebVeiw2을 이용하여 Vb6에서 사용할수 있는지 문의드립니다. [2]
5956fc1/11/20252874한국투자증권 KIS Developers OpenAPI의 C# 래퍼 버전 - eFriendOpenAPI NuGet 패키지 [1]
5955tree...11/8/20244510C#12 책 179 페이지 문의 사항 [2]
5954SunN...10/10/20244984textbox에서 글자입력후 textBox1_KeyUp함수에서listBox1_SelectedIndexChanged 강제호출방법 [1]
5953Roya10/4/20244964c# com host dll을 c++에서 사용할 때, sdk 관련 runtime 을 설치 안하고 제공할수 있을까요?? [1]
5952우광현9/5/20246080서버용 소켓 포트 동적포트 적용시 클라이언트가 호출하는 방법? [2]
5951Kun ...8/21/20245697c++에서 복합데이터 Struct를 .NET Framework에서 구현할 수 있는 방법이 있을까요? [2]
5950SunN...8/18/20246266정석대로 한다면 response.Close() 해야되는지요? [4]
5949SunN...8/16/20246355SqlConnection Open()에서 에러가나면 Close()하는 시점 [3]
5948SunN...8/14/20246225WebRequestMethods.Ftp.MakeDirectory 해제 [3]
5947Roya8/7/20247002c# dll을 cpp lib에서 사용을 할려고 하는데요. CoCreateInstance 에서 지정된 파일을 찾을수 없다고 나오는대요. [4]
5946SunN...8/5/20247107TaskDefinition 에서 사용저가로그온상관없이실행 [3]파일 다운로드1
5945SunN...8/3/20246971윈도우 작업스케줄러 [1]
5944roya8/1/20246919C# dll을 C++ 프로젝트에서 사용을 하고 싶은데, 레지스트리 등록 없이 가능한걸까요?? [2]
5943SunN...8/1/20246789윈도우C#에서 리눅스FTP로 업로드 및 리눅스에 폴더생성(WindowsOS에서C#으로) [3]
5942vict...7/24/20246827dll 을 c#에서 쓰고 싶습니다 [1]
5941vict...7/17/20248329DependencyObject와 같은 스레드에서 DependencySource를 만들어야 합니다. 오류 [2]
5940ckm7/16/20248732선생님 안녕하세요 async await 교착 관련 질문입니다 [1]
5939괴물신인7/9/20248428템플릿 대체할수있는방법이 있을까요? [6]
[1]  2  3  4  5  6  7  8  9  10  11  12  13  14  15  ...