Iis 如果省略默认索引文件名,则无法读取查询字符串?

Iis 如果省略默认索引文件名,则无法读取查询字符串?,iis,asp-classic,Iis,Asp Classic,如果URL中没有提供默认文件名,则Request.ServerVariablesQUERY\u字符串返回空白时,IIS或ASP Classic是否存在问题?在我本地的开发人员机器上,我可以 http://localhost/xslt/?opcs/abc 返回opcs/abc。然而,在我们古老的web服务器上,它什么也不返回。我必须在URL中显式地给它指定默认文件名。像这样 http://localhost/xslt/default.asp?opcs/abc 虽然没什么大不了的,但有点烦人。我

如果URL中没有提供默认文件名,则Request.ServerVariablesQUERY\u字符串返回空白时,IIS或ASP Classic是否存在问题?在我本地的开发人员机器上,我可以

http://localhost/xslt/?opcs/abc
返回opcs/abc。然而,在我们古老的web服务器上,它什么也不返回。我必须在URL中显式地给它指定默认文件名。像这样

http://localhost/xslt/default.asp?opcs/abc
虽然没什么大不了的,但有点烦人。我可以考虑的一种解决问题的方法是让Javascript读取URL并在?之后返回所有内容

不幸的是,我不知道我们使用的是什么版本的IIS或ASP


谢谢。

这听起来像个bug,我以前做很多ASP的时候从来没有经历过。确保您已修补到最新版本。

如果您运行的是IIS 4.0,很可能就是这种情况。所以你真的被这一古老的软件和硬件所困扰吗

我知道服务器没有打补丁。它正在运行Windows NT,我被告知他们不会更新它。除非指定默认文件名,否则Request.QueryString也不会返回任何内容:当然,你可以自己写函数,我不懂。为什么编写我自己的函数?好了,没有其他服务器端方法可以获取请求的完整URL。你是对的,我认为SCRIPT_NAME包含了querystring,你可以解析它,但它没有。我真的认为,出于安全原因,服务器需要修补或停用。我已经接受了你的答案。谢谢你的时间和帮助