문제

나는 미쳤다. 나는 모든 것을 시도했다. Urlencode, HTML Encode, UrlrewriTing.net은 아랍어 queryString을 읽고있다 ?? Charecters

도움을 완전히 감사합니다

도움이 되었습니까?

해결책 3

오랫동안 지루한 시험 후에 통합 모드에서 IIS 7과 함께 URL 재 작성을 사용하는 사람에게 조언을 받고 시간을 낭비하지 않고 MVC 라우팅을 사용하거나 URL에서 아랍어 문자열을 잊어 버립니다.

다른 팁

.NET 3.5 SP1이 설치되어 있으면 전환하는 것이 좋습니다. System.Web.Routing urlrewriting.net 라이브러리 대신. 나는 최근에 urlrewriting.net에서 전환했습니다 System.Web.Routing 나 자신과 라우팅은 훨씬 더 나은 생각을하고 ASP.NET 파이프 라인과 더 잘 통합됩니다.

전환 할 기회가 있다면 추천합니다. 그렇지 않은 경우 UrlrewriTing.net 구성 파일을 게시하여 작동하지 않는 일반 표현식을 조정할 수 있습니다. 작동하지 않는 Uris의 몇 가지 예를 게시하십시오.

또한, 정의 된 값은 무엇입니까? web.config 부분:

<system.web>
  <globalization requestEncoding="utf-8"
                 responseEncoding="utf-8"
                 fileEncoding="utf-8" />
</system.web>

위의 예에서와 같이 UTF-8을 사용하십시오. 또한 URI에서 문자를 UTF-8으로 인코딩해야합니다.

"클래식 모드"에서 IIS 7 응용 프로그램을 실행하면 어떻게됩니까 (사용 가능한 옵션이 되려면 설치가 필요할 수 있음)?

이것을 시도해보십시오. 더 빠릅니다. 그리고 문제가 없습니다.

"~/News/2008/10/10/NewsID/Â 릅니다. ASPX"여기서 NewsID는 기사의 ID입니다.

데이터베이스에서 타이틀을 얻으십시오. 'Select *에서 id ='& NewsID에서 : "Select * From News Where where the Title = '& Title &"' "보다 훨씬 빠릅니다.

링크가 포함 된 두 페이지, 쿼리 문자열을 구문 분석하는 페이지가 UTF-8 인코딩을 갖도록하여 문제를 해결 한 것 같습니다.

그러나 이제 나는 또 다른 문제가 있습니다. Firefox는 하이퍼 링크와 주소 막대의 링크를 올바르게 표시하지만 IE6 및 IE 7에서는 다음과 같습니다.

mysite/News/2008/10/10/%D8%AA%D8%AC%D8%B1%D8%A8%D8%A9.aspx

IE 6과 7이 링크를 잘 구문 분석하고 있지만 이것은 추악하지만 해결책은 무엇입니까?

업데이트: 당신은 그것을 믿지 않을 것입니다. 나는 그것이 너무 이상하다는 문제를 발견했습니다. 그것은 IIS 7 통합 모드와 관련이 있습니다. Visual Studio Dev Server에서 페이지를 시작하려고 노력하면 유니 코드 문자가 잘 구문 분석되지만 페이지를 시작하면 페이지를 시작하면 페이지를 시작합니다. IIS 7에서 그것은 당신에게 당신에게 줄 것입니까 ???? 캐릭터.

어떤 몸이 여기에 약간의 빛을 그릴 수 있기를 바랍니다

당신은 ->를 사용할 수 있습니다 server.urlencode (productName) global.aspx 또는 다시 쓰기 전에 사용하십시오 server.urldecode (request.querystring [ "productName"]); Pageload에서

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top