ASP는 현재 URL을 가져오거나 현재 페이지의 모든 매개변수를 가져오려면 이 기능을 사용해야 합니다. 아직 많이 테스트하지 않았으므로 테스트 후에 구체적인 코드를 알려드리겠습니다.
주소가 다음과 같은 경우:
http://dxy.com:8082/test/geturl.asp?Param-VR52tmx3syn03777.html
방법 1: 단순, 매개변수 없음, 가상 경로만 있음
다음과 같이 코드 코드를 복사합니다.
GetUrl =request(url) 'url=이라는 단어가 없기 때문에 직접 전달할 수 있습니다.
방법 2: 전체 URL 가져오기 및 매개변수 가져오기
다음과 같이 코드 코드를 복사합니다.
'현재 페이지의 주소를 가져옵니다
함수 GetUrl()
오류 발생 시 다음 재개
희미한 strTemp
LCase(Request.ServerVariables(HTTPS)) = 꺼진 경우 그러면
strTemp = http://
또 다른
strTemp = https://
종료 조건
strTemp = strTemp & Request.ServerVariables(SERVER_NAME)
If Request.ServerVariables(SERVER_PORT) <> 80 그러면 strTemp = strTemp & : & Request.ServerVariables(SERVER_PORT)
strTemp = strTemp & Request.ServerVariables(URL)
If Trim(Request.QueryString) <> Then strTemp = strTemp & ? Trim(Request.QueryString)
GetUrl = strTemp
기능 종료
이 코드를 테스트한 후 얻은 경로는 다음과 같습니다.
/test/geturl.asp?Param-VR52tmx3syn03777.html=
방법 2: 가상 경로 가져오기 및 매개변수 가져오기
다음과 같이 코드 코드를 복사합니다.
개인 함수 GetUrl()
희미한 스크립트 주소, M_ItemUrl, M_item
ScriptAddress = CStr(Request.ServerVariables(SCRIPT_NAME)) '현재 주소를 가져옵니다.
M_ItemUrl =
If (Request.QueryString <> ) 그러면
ScriptAddress = 스크립트 주소 & ?
Request.QueryString의 각 M_item에 대해
M_item = page_num인 경우 '여기서의 기능은 Page_num의 매개변수를 필터링하는 것입니다(이 매개변수는 page_turn.asp에서 자체적으로 설정되고 개인 설정에 따라 변경됨). 그렇지 않으면 페이지를 넘길 때마다 이 매개변수가 겹쳐집니다. 매개 변수가 기능에 영향을 미치지 않지만 여전히 좋지 않습니다 ~~
InStr(page,M_Item)=0이면
M_ItemUrl = M_ItemUrl & M_Item &=& Server.URLEncode(Request.QueryString(&M_Item&))
또 다른
M_ItemUrl = M_ItemUrl & M_Item &=& Server.URLEncode(Request.QueryString(&M_Item&)) & &
종료 조건
다음
또 다른
ScriptAddress = 스크립트 주소 & ?
종료하면
GetUrl = ScriptAddress 및 M_ItemUrl
기능 종료
위 코드로 얻은 주소는
http://dxy.com:8082/test/geturl.asp?Param-VR52tmx3syn03777.html
기본적으로 동일
숫자 뒤에 있는 것을 얻으려면 다음 코드를 사용할 수 있습니다.
다음과 같이 코드 코드를 복사합니다.
response.write 교체(request.querystring,.html,)
우리가 얻는 것은 Param-VR52tmx3syn03777입니다. 우리의 요구 사항을 충족합니까?
추신: 위의 모든 상황은 순수 ASP에만 해당됩니다. urlrewrite와 결합하면 기능이 향상되고 검색 친화성도 향상됩니다.