问题标签 [url-rewriting]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
799 浏览

asp.net - ASP.NET (3.5) 的简单可破解 URL 实现

我正在寻找一个好的示例项目或网站参考,它提供了一个简单易懂的 URL 重写和制作可破解 URL 的概述。

我已经阅读了大量关于这个概念的内容,但我特别想为程序员寻找一个好的实现示例来开始使用。

这是专门针对 .NET 3.5 的,所以其中的示例非常完美!

编辑:现在 ASP.NET 4.0 已经发布,这个问题没有实际意义,因为 URL 路由机制非常棒。我在所有 ASP.NET 应用程序中都使用它。

0 投票
2 回答
1741 浏览

asp.net - ASP.NET URL 重写从没有扩展名的 URL 内容进行 DB 查询

我正在尝试创建一个非常简单的 ASP.NET 应用程序,它显示从基于 URL 的数据库中检索到的信息,以类似于 wiki 的方式,但在这种情况下,该站点是只读的。我想要的 URL 示例是:

然后,应用程序将使用“bar”作为 SQL 查询参数来显示来自与“bar”匹配的数据库的信息。

我研究了 IIS6 的许多 URL 重写器选项(这将在专用服务器上),但我仍然不确定该应用程序使用哪一个。

为了澄清一下,我只需要从单个default.aspx文件运行该站点,但我希望它按上述方式工作。整个站点逻辑将非常简单。

我希望在这方面有更多经验的人可以帮助我——我正在寻找最简单的解决方案来解决这个问题。

0 投票
3 回答
15592 浏览

asp.net - Server.Transfer 与 Context.RewritePath

我知道他们都不会更改客户看到的 URL。它们中有什么东西使它们中的一个比另一个更受欢迎吗?
我打算在 Global.asax 的 Application_BeginRequest 中使用它,但也可以在常规的 aspx 页面中使用它。

0 投票
4 回答
3237 浏览

asp.net - 显示重写而不是原始 URL 的 IIS 日志文件

我有一个问题,改变我在 Asp.Net 应用程序中进行 Url 重写的方式已经改变了 IIS 日志文件,看起来像这样:

/page/ 80 等等.. /page/anotherpage/ 80 等等...

default.aspx page=1 80 等... default.aspx page=2 80 等...

我有点困惑这是怎么发生的。是否有我缺少的设置(Win 2008,ASP.NET 2.0) 中的“runAllManagedRequests”设置也已打开。

0 投票
8 回答
3749 浏览

asp.net - 使用 urlrewriter 时出现图像和样式表的问题

我在这里的几个问题中建议使用 urlrewriter.net。我在显示图像和样式表时遇到了困难。

我阅读了 ScottGu 的博客(再次按照此处的推荐),最后他确实提到了这个问题并声明使用 ~/ 用于服务器控件等(文章末尾的“正确处理 CSS 和图像引用”)。

我尝试了他的解决方案,但似乎不起作用。

唯一对我有用的是写完整的路径。出于某种原因,在我看来,这不是正确的解决方案。这会给开发和调试带来严重的问题。

有谁知道问题的原因是什么?我需要在 web.config 文件中更改什么吗?

谢谢

0 投票
1 回答
1859 浏览

jsp - 使用 UrlRewrite 在 JSP 中替换 URL 字符

我在JBoss上的JSP项目中使用UrlRewrite。我已经配置了一些规则,这样的东西:

读作:

等等。

现在,我想知道是否有办法将用户在 URL 中提交的某些字符替换为其他字符。类似于维基百科所做的事情。当您在 WikiPedia 中的 URL 中使用空格时,它会被替换为“-”。

UrlRewrite 是正确的工具吗?我周围也有一些过滤器,但我想我应该能够使用 UrlRewrite 或类似工具来完成此操作。

0 投票
4 回答
5787 浏览

c# - IIS7、RewritePath 和 IIS 日志文件

我在 IIS7 上运行的 ASP.NET 3.5 应用程序中使用 Context.RewritePath()。

我在应用程序 BeginRequest 事件中执行此操作,并且一切正常文件。

/sports 的请求被正确地重写为 default.aspx?id=1,依此类推。

问题是在我的 IIS 日志中,我看到 /Default.aspx?id=1 的 GET 请求,而不是 /sports 的 GET 请求。

这种代码在 IIS6 下完美运行。

由于必须实现一些业务逻辑,因此不能选择使用 Microsoft Rewrite 模块。

谢谢。

编辑:

似乎我的处理程序在管道中为时过早,但是如果我将逻辑移到以后的事件中,那么整个重写的事情就不起作用了(为时已晚,StaticFileHandler 接受了我的请求)。

我用谷歌搜索和谷歌搜索,四处询问,不敢相信没有人有这个问题?

编辑:

哎呀!这是我在 IIS 论坛上找到的内容:

“这是因为在集成模式下,IIS 和 asp.net 共享一个公共管道,并且现在 IIS 可以看到 RewritePath,而在 IIS6 中,IIS 甚至都看不到它 - 您可以使用经典模式来解决这个问题,其行为类似于IIS6。”

最终更新:请看下面我的回答,我在生产环境中使用了一年多后更新了结果。

0 投票
4 回答
1312 浏览

asp.net - 如何使用 URL 设置 ASP.NET 2.0 Web App 中的当前区域性?

我正在寻找使网站基本上具有以下功能的方法:

http://mysite.com/ en-US /index.aspx`

“en-US”可能因文化而异。

然后,URL 中的这种文化将基本上CurrentUICulture为应用程序设置 ..

基本上,我们目前有一个页面,用户明确点击它,但有些人喜欢过去,这导致了一些问题..

我知道这种事情在 ASP.NET MVC 中很容易完成,但是我们这些仍在 2.0 中工作的人呢?你们能提供任何可以让我开始的建议/指针/任何东西吗?这对我来说是新的:)

我确定必须有某种方法来接收请求并酌情设置/退回..HttpModule也许?

更新

刚刚想到.. 最好在 IIS 中创建 VirtDirs,然后从请求的 URL 中提取适当的部分并将文化设置为InitializeCulture

0 投票
2 回答
134 浏览

url-rewriting - 如何提取数据并将其替换为新代码并将其另存为新文本?

我一直在尝试在原始文本的每一行中提取 URL 的最后六个数字,并将其添加到另一个必须添加到结果文本中的代码中。还需要从原始文本中删除每一行的一些代码,并将其替换为结果文本中的新代码。

输入 http://riyajr.googlepages.com/original.txt

输出 http://riyajr.googlepages.com/result.txt

有什么软件可以完成上述任务吗?请帮助我提供任何其他可用选项。如果有人可以为我提供可以完成上述任务的完整脚本代码,那就太好了。

0 投票
2 回答
15943 浏览

apache - .htaccess 子域的重写规则

我使用 codeigniter 作为我在主域上的主要安装。我创建了一个子域和一个名为 live 的文件夹,例如 live.domain.com 映射到 public/live 。但是在公共场合我使用codeigniter。

我现在有动态 codeigniter url:

我想映射到我的子域:

所以要去:

将使用脚本:

并且可能:

一切都在同一台服务器上,因此不需要重定向。

有人对使用哪些重写规则有任何想法吗?

以上作为重写非常有效,但重定向到http://domain.com/api/functionname而不是我希望它路由;这样当去:

它停留在该网址,但使用的脚本

非常感谢,