【问题标题】:ASP redirect URLASP 重定向网址
【发布时间】:2011-08-03 19:13:16
【问题描述】:

我想在 .asp 文件中创建重定向规则。

例如当我输入www.example.com/states/ABC/XYZ

它应该运行www.example.com/states?state=ABC&city=XYZ页面并且浏览器地址应该显示www.example.com/states/ABC/XYZ

我知道如何在 ColdFusion 中使用 .htaccess 文件,但不知道重定向在经典 ASP 中是如何工作的。

【问题讨论】:

  • 1) 你有什么网络服务器? 2) 你对它有多少控制权(即你可以在服务器上安装额外的软件)?

标签: redirect asp-classic url-routing


【解决方案1】:

您可以使用 server.transfer。它使 url 保持不变(没有实际的浏览器重定向,都是服务器端的)

嗯...转念一想,我记得你在使用 server.transfer 时无法在经典 ASP 中使用参数

【讨论】:

  • 感谢您的回答。现在如果我想运行“site.com/category.asp?Cat=991”,这是一个根据“Cat”参数值动态呈现不同产品类别页面的asp脚本,我将输入“site.asp?Cat=991”。 com/Cat/Bathroom-Faucets/991" 在浏览器中。如果我们有 htaccess 文件,这很容易。但是我如何在 ASP 中实现它
  • 我已经有一段时间没有搞砸这些东西了,但是根据记忆,您需要在 IIS 中进行设置。例如,创建一个名为“Cat”的虚拟目录,并在其中创建一个虚拟目录“Bathroom-Faucets”,其中包含一个文件,例如“default.asp”。在 default.asp 中,您将获得 url 的最后一部分(991)并执行 server.transfer。就像我说的那样,问题是我认为您不能在 server.transfer 中使用 ?Cat=991,因此您可能需要设置 cookie 或服务器变量。另一种选择是寻找一个 IIS 插件,它可以让你像在 htaccess 中那样进行重定向
  • 你知道类似于 Jquery 或 Javascript 中的 server.transfer 吗?谢谢
【解决方案2】:

取决于您使用的服务器版本。如果您在 IIS7 或更高版本上,则可以使用URL rewriting module(您可能必须使用Web Platform Installer 安装它)。

如果您使用的是 IIS6 或更低版本,则需要第三方工具。我可以亲自推荐ISAPI_Rewritev3 even supports .htaccess syntax。 V2有一个免费版本,它是整个服务器的单一配置,付费版本很有价值。

【讨论】:

  • 我有一个共享主机帐户,没有访问 IIS 服务器的权限,所以不能使用 ISAPI_Rewrite
猜你喜欢
  • 2010-11-29
  • 1970-01-01
  • 2014-06-08
  • 2011-05-03
  • 2017-10-21
  • 2010-12-31
相关资源
最近更新 更多