首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >获取页面的当前url (使用的URL重写)

获取页面的当前url (使用的URL重写)
EN

Stack Overflow用户
提问于 2013-03-14 04:00:27
回答 3查看 32K关注 0票数 12

我正在研究经典的asp应用程序。我在一些页面上使用了URL重写。

如何在经典的asp中获取当前页面的url?

示例: IIS中的http://www.site.com/page.asp -> url重写-> http://www.site.com/home/page

所以在这里我想要的页面的当前url是http://www.site.com/home/page

请帮帮我。谢谢。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-03-14 18:04:02

您可以尝试输出所有ServerVariables,如下所示:

代码语言:javascript
运行
复制
for each key in Request.Servervariables
  Response.Write key & " = " & Request.Servervariables(key) & "<br>"
next

也许您要查找的URL已经存在。我们使用重写模块,并且有一个名为HTTP_X_ORIGINAL_URL的页面,其中包含重写后的URL路径,例如示例中的“/ ServerVariable /HTTP_X_ORIGINAL_URL”。

协议(HTTPS=ON/OFF)和服务器(SERVER_NAME)也可以在ServerVariables中找到。

票数 19
EN

Stack Overflow用户

发布于 2013-03-14 06:20:31

没有一个花哨的函数可以做所有的事情。

首先,您需要获取协议(如果协议不总是http的话):

代码语言:javascript
运行
复制
Dim protocol
Dim domainName
Dim fileName
Dim queryString
Dim url

protocol = "http" 
If lcase(request.ServerVariables("HTTPS"))<> "off" Then 
   protocol = "https" 
End If

现在使用可选的查询字符串:

代码语言:javascript
运行
复制
domainName= Request.ServerVariables("SERVER_NAME") 
fileName= Request.ServerVariables("SCRIPT_NAME") 
queryString= Request.ServerVariables("QUERY_STRING")

url = protocol & "://" & domainName & fileName
If Len(queryString)<>0 Then
   url = url & "?" & queryString
End If

希望它能为你工作。

票数 21
EN

Stack Overflow用户

发布于 2017-10-05 15:32:52

如果使用URL重写,则只能通过以下方式检索url数据:

Request.ServerVariables("HTTP_X_ORIGINAL_URL")

示例

代码语言:javascript
运行
复制
Dim domainName, urlParam
domainName = Request.ServerVariables("SERVER_NAME") 
urlParam   = Request.ServerVariables("HTTP_X_ORIGINAL_URL")
response.write(domainName & urlParam)
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15395280

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档