2012-09-30 2 views
1

이 작업을 수행하려고합니다. DNN 모듈에서 쿼리 문자열을 읽고 몇 단계를 수행합니다. 이 모든 것이 잘 작동합니다.인수 이름이없는 쿼리입니다.

http://mysite.website.com/1234 

인가 :

http://mysite.website.com/?pid=1234 

내가 그것을 모양을하고 싶습니다 : 지금 쿼리 문자열

을 읽는 동안 지금이 URL을 정리하기 위해 노력하고, URL은 다음과 같이 보입니다 이것도 가능한 것 같은가요?

+0

'ASP.NET MVC' 발견 –

답변

0

URL Rewriter 모듈을 사용하여 살펴 봅니다. IIS6에는 여러 가지 타사 도구가 있지만 Microsoft에서는 IIS7 및 IIS7.5를 제공합니다. 기본적으로 정규식으로 구성하고 출력을 변경합니다. http://www.iis.net/downloads/microsoft/url-rewrite

0

당신은 선택의 몇 가지를 가지고 : 인트로이 링크를 확인

  1. 는 DNN에서 사용할 수있는 재 작성 기능을 탐색 및 사용 방법. 호스트 설정> 고급 설정> URL 설정에서 찾을 수 있습니다. 또는 작업중인 IIS의 버전에 따라 두 번째 옵션을 사용하십시오.

2a. IIS 7 용 URL 다시 쓰기 모듈

&

2b. HeliconTech의 "ISAPI_Rewrite 3"(무료 버전도 있습니다.)

0

HttpModule을 사용하여 DNN과 전혀 상호 작용하지 않고 원하는 것을 달성 할 수 있습니다. 종류의 같은 :

public class PidRewriteModule : System.Web.IHttpModule 
{ 
    public void Dispose() 
    { 
    } 

    public void Init(System.Web.HttpApplication context) 
    { 
     context.BeginRequest += new EventHandler(context_BeginRequest); 
    } 

    void context_BeginRequest(object sender, EventArgs e) 
    { 
     HttpApplication app = sender as HttpApplication; 

     if (app != null) 
     { 
      Match mPidCheck = new Regex(@"^/(?<pid>[0-9]+)/?$").Match(app.Context.Request.Url.AbsolutePath); 
      if (mPidCheck.Success) 
      { 
       app.Context.RewritePath("~/default.aspx", String.Empty, String.Concat("pid=", mPidCheck.Groups["pid"].Value)); 
      } 
     } 
     else 
      return; 
    } 
} 

그런 다음 당신은 당신의 Web.config에이를 추가 할 수 있습니다
<modules runAllManagedModulesForAllRequests="true"> 
    <add name="PidRewriteModule" type="Assembly.Namespace.PidRewriteModule, Assembly"/> 
</modules> 

은 넣어 그의 system.webServer 노드한다. 대체 어셈블리 및 네임 스페이스.

이 정보는 모두 IIS7 용입니다. IIS 6에서는 완전히 다르지 않지만 이전 구현에서는 ISAPI 필터 경로를 따라야합니다.

1

DotNetNuke (예 : iFinity UrlMaster 등)에 적합한 다시 쓰기 솔루션을 사용하는 것이 훨씬 좋습니다.

그러면 모듈에 대한 사용자 지정 URL 공급자를 작성할 수 있습니다.

나는 (내 기사 모듈의 부품을 다시 내 사이트에 한 일이다

예를 들어 www.ventrian.com/blog/

현재 urlmaster에 대한 자세한 정보를 찾을 수 있습니다

:

http://www.ifinity.com.au/Products/Url_Master_DNN_SEO_Urls

관련 문제