IIS URL 重写 ASP

2024-01-09

我尽力扫描论坛寻求帮助,以制作 web.config 来重写此类 url

domain.com/default.asp?id=3&language=2

我希望这可以是

domain.com/en/service

where language=2是“恩” 和id=3是页面“Service”(此名称存在于 mySQL 中)

我只能找到反之亦然的例子......

像这样

<rewrite>
  <rules>
    <rule name="enquiry" stopProcessing="true">
      <match url="^enquiry$" />
      <action type="Rewrite" url="/page.asp" />
    </rule>
  </rules>
</rewrite>

我希望它是这样的......我知道这是不正确的,但也许可以解释我的问题。

<rewrite>
  <rules>
    <rule name="enquiry" stopProcessing="true">
     <match url="^default.asp?id=3&language=2$" />
     <action type="Rewrite" url="/en/serice" />
    </rule>
  </rules>
</rewrite>

如果你想使用正则表达式,你可以这样做

<rule name="RewriteUserFriendlyURL1" stopProcessing="true">
     <match url="^([^/]+)/([^/]+)/?$" />
         <conditions>
             <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
             <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
         </conditions>
     <action type="Rewrite" url="default.asp?language={R:1}&amp;id={R:2}" />
</rule>

这会将“domain.com/en/service”重写为“domain.com/default.asp?language=en&id=Service”,或将“domain.com/2/3”重写为“domain.com/default.asp?language” =2&id=3"

要将 2 更改为 en,将 3 更改为 service,以及所有其他选项,尽管我认为您需要为每个排列使用单独的规则,或者在您的 asp 页面中使用某种逻辑来读取您的查询字符串变量并发送相应的您的 SQL 查询的值。另请注意,友好 URL 中的参数与重写 URL 中的查询字符串变量以相同的顺序出现,尽管这实际上不应该成为问题。如果有人尝试使用原始的“不友好”url 访问该页面,无论他们以哪种方式输入查询字符串变量,他们都会找到他们正在寻找的内容。

请注意,我实际上并没有手动编写上面的规则,而是使用 IIS 管理器中的 URL 重写模块生成它 - 它使生活变得更加轻松

另请注意,正如我在另一个答案中与同名者讨论的那样,这仅适用于 IIS7 及更高版本

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

IIS URL 重写 ASP 的相关文章

  • 如何在 Windows 10 IIS 中的 Blazor Server 应用程序上支持多个浏览器选项卡?

    我将 Blazor 服务器应用程序发布到 Windows 10 上的本地 IIS 它运行良好 但我无法打开网站的多个窗口 选项卡 如果我尝试 它会永远加载 直到我关闭以前的应用程序窗口 此行为是否是由于 Windows 10 上的 Sign
  • 从 iPhone 上传图像/音频到服务器无法发送大图像

    我不知道这是我的iPhone代码还是服务器的问题 我正在使用 NSURLConnection 将图像 音频从 iPhone 上传到服务器 如果图像和音频的大小小于 60KB 则可以正常上传 如果超过 60KB 我会从服务器收到 400 Ba
  • IIS 未使用 PyISAPe 链接到 Django

    我正在尝试在基于 IIS 的服务器上使用 Django 运行网站 我遵循了主网站上的所有说明 http code djangoproject com wiki DjangoOnWindowsWithIISAndSQLServer http
  • 如何从Windows服务公开restful接口?

    我编写了一个公开restful接口的wcf服务 现在我使用iis作为wcf服务主机 除了暴露其余部分之外 我还需要对我的应用程序执行一些操作 为此 我必须将我的应用程序作为 Windows 服务运行 但是使用iis作为主机不会使我的wcf服
  • 自动递增asp控件ID

    我怎样才能做相当于 经典 ASP a href somelink com Link a C
  • 使用 MSBuild Web 部署到服务器

    我在 VS 2012 项目中设置了发布配置文件 当我在 VS 中右键单击该项目 选择 发布 并单击 发布 按钮时 它会使用 发布配置文件 中提供的设置将项目发布到服务器 当我使用 msbuild 和命令行时 使用以下语法 msbuild e
  • IIS7集成管道:maxConcurrentRequestsPerCPU和requestsQueueLimit设置之间的交互

    首先 这里对 IIS7 HTTP 请求生命周期以及影响性能的各种设置进行了很好的概述 IIS 7 0 和 6 0 上的 ASP NET 线程使用情况 http blogs msdn com b tmarq archive 2007 07 2
  • IIS 7 规范 URL 重定向

    我想让一个网站的地址中始终包含 www 并通过 IIS 重写强制执行 例如 test com 将变为 www test com 典型的重写规则示例是
  • .Net Core 和 Microsoft.Web.Administration

    我正在尝试编写一个可以将绑定添加到远程服务器上的 IIS 的服务 我正在使用 Microsoft Web Administration 我添加绑定的代码如下所示 public static bool AddSiteBinding strin
  • Facebook - Curl 错误 SSL_CACERT SSL 证书

    我正进入 状态 Curl 错误 SSL CACERT SSL 证书问题 无法获取本地颁发者证书 当要求 Facebook刮我的页面 https developers facebook com tools debug sharing 通过 h
  • 随机 IIS 会话超时

    我有一个非常奇怪的问题 我正在寻求任何建议 我有一个运行在 IIS 6 上的 ASP NET 网站 它在大多数情况下运行良好 但是 会话似乎是随机清除的 因此 如果我登录 单击周围 我就会被随机启动 有时是在 30 秒 4 次点击之后 有时
  • 将 ADODB.RecordSet 输出为 JSON

    我正在尝试更改我的应用程序 以便它输出 JSON 而不是 HTML当它发出 AJAX 请求某些数据时 我有一个 ADODB 记录集 我需要逐行循环它并添加 更改 删除不同的值 然后我需要获取所有修改的行response write它们作为
  • URL 缩短器垃圾邮件

    最近 我开始通过 URL 缩短器将垃圾邮件 URL 接收到我的论坛软件中 过去 它们很容易被域阻止 但我无法完全阻止 URL 缩短器的域 因为我也看到了一些有效的用法 关于如何管理这些垃圾邮件 URL 以及使用它的垃圾邮件发送者 有什么最佳
  • 经典 ASP 网站偶尔会挂起

    我们在 IIS 7 5 上有一个经典的 ASP 网站 用户随机遇到响应缓慢的情况 发生这种情况时 用户在几分钟内无法执行任何操作 这非常令人沮丧 例如 我可以打开主页 然后在类别中单击几次 然后网站就停止响应 我没有注意到网站何时停止响应的
  • 无法在 Windows 8 上的 IIS 中提供 WCF 服务

    当我尝试在 Windows 8 计算机中的 IIS 上提供 WCF 服务时 出现众所周知的错误 由于扩展配置的原因 无法提供您请求的页面 如果页面是脚本 请添加处理程序 如果应下载该文件 请添加 MIME 映射 旧的解决方法是运行aspne
  • 了解 ASP.NET 应用程序文件夹

    ASP NET 中的应用程序文件夹用于存储对运行网站至关重要的各种元素 我想更深入地了解这些文件夹 特别是文件夹的可访问性 根据有关的文章ASP NET 网站布局 http msdn microsoft com en us library
  • Nginx 位置、别名、重写、根

    我正在通过 proxypass 提供 foo bar 服务 并希望继续这样做 但是 我想从 var www mystatic baz swf 等静态地提供 foo bar baz swf 服务 我希望我能做类似的事情 location fo
  • 如何从网站网址中隐藏 .html 扩展名

    我知道这个问题以前曾被问过 但有人知道隐藏 html 扩展名的好方法吗 我已经尝试了许多代码和许多答案https stackoverflow com https stackoverflow com 但我没有看到结果 那是我再问你一次 我有一
  • 如何从此 ADODB.Recordset 获取插入 ID?

    我试图避免在我的网络应用程序中使用直接的 SQL 查询 我环顾四周 得出的结论是 ADORecordset这将是这项工作的最佳或至少是最安全的工具 我需要将记录插入数据库表中 不幸的是 我不知道如何获取刚刚插入的记录的标识值 这是我现在所拥
  • ASP.NET Core 2.1 中不使用正则表达式的 URL 重写

    我的图标位于 images favicon ico而不是根 在Startup cs我可以添加重定向以避免 404 app UseRewriter new RewriteOptions AddRedirect favicon ico imag

随机推荐