问题标签 [isapi-rewrite]

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 投票
7 回答
2918 浏览

.htaccess - 使用 .htaccess 将非 www URL 重定向到 www

我正在使用Helicon 的 ISAPI Rewrite 3,它基本上可以在 IIS 中启用 .htaccess 。我需要将非 www 的 URL 重定向到 www 版本,即 example.com 应该重定向到 www.example.com。我使用了示例中的以下规则,但它会影响子域:

这在大多数情况下都有效,但也将 sub.example.com 重定向到 www.sub.example.com。如何重写上述规则以使子域不会被重定向?

0 投票
1 回答
272 浏览

iis - MOD_Rewrite 重写是否通过重写规则调用第二次运行?

当 MOD_Rewrite 执行 RewriteRule 时,是否会为新生成的请求再次执行所有 MOD_Rewrite 规则?具体在以下示例中,这会导致循环吗?

0 投票
3 回答
9089 浏览

iis-7 - IIS 7 中的 ISAPI_Rewrite

多年来,我一直在 Server 2003 机器上使用 Helicon ( http://www.helicontech.com/isapi_rewrite/ ) 的 ISAPI_Rewrite,并且一直很幸运。

我正在将 2003 机器上的所有站点迁移到一个新的闪亮的 Server 2008 机器上。我宁愿不购买新许可证,而且我听说 IIS 7 将具有内置功能。

所有重写都设置在 .htaccess 配置文件中,就像 Apache 的 mod_rewrite 一样。

有谁知道此功能是否已融入 IIS 7,如果是,您是否知道任何解释如何启用它的好文章?

谢谢。

0 投票
4 回答
206 浏览

iis-6 - 1 个域 两个独立的应用程序

www.one.com 是主站点,但该站点有一个英国版本,理想情况下需要位于子目录 (/uk) 中。

如何设置 IIS 以允许我在一个域下拥有多个站点?

或者我可以有两个独立的站点并使用 ISAPI_rewrite 指向 www.one.com/uk 从另一个站点读取但保留 URL www.one.com/uk?

0 投票
3 回答
616 浏览

coldfusion - 使用 ISAPI_Rewrite v2 重写 ColdFusion 站点的 url 是否有任何陷阱?

我被要求帮助一些 ColdFusion 开发,其中一项任务是进行 url 重写,主要是将 url 参数转换为更清晰的 url。

该站点位于托管服务上,cf8 在 iis 上运行,Helicon Tech ISAPI_Rewrite v2。

有什么我应该注意的吗?

谢谢。

0 投票
2 回答
1733 浏览

regex - 使用 ISAPI-Rewrite 排除目录

我正在尝试使用 ISAPI-Rewrite 排除目录(注意:这是 mod-rewrite 的 windows/iis 端口)。

我要排除的目录是“api”,当它位于站点的根目录时。

这是我的规则:

RewriteRule ^(/api/)(.+)$ $1$2 [NC, L]

请求看起来像这样:/api/v2/users?usernames=scottw

不幸的是,querstring 值总是被排除在外,并且 url 被重写为 /api/v2/users。

我在假设 (.+) 会捕获其他所有内容的情况下进行攻击。

有什么建议么?还是排除目录的更好方法?

谢谢

更新:我也简化了规则,但这也没有改变任何东西:

重写规则 ^(/api/.+)$ $1

0 投票
2 回答
2458 浏览

seo - Isapi Rewrite 301 重定向解析为 404 - 循环引用?

我正在尝试使用 IIS Isapi Rewrite 来执行以下操作...

我需要将 seo 友好的 URL(静默)转换回应用程序友好的 URL,如下所示:

很简单。

但我还需要已经在搜索引擎中索引的 URL(例如)被 301 重定向到对 seo 友好的版本。像这样:

这些中的每一个都可以单独工作。但是当我在我的 .ini 文件中同时拥有这两个文件时,我的浏览器地址栏中会显示 /seo-friendly-url/ 但我得到的是 404。(是的,/test/index.cfm 肯定存在!)

我知道它看起来像一个循环引用,但第一条规则只重写 IIS 和应用程序之间的 URL - 没有重定向,所以我没有第二次点击 Isapi Rewrite。还是我错了?

我在 Isapi Rewrite 上启用了日志记录,我看到以下内容:

有人有什么想法吗?

0 投票
1 回答
1604 浏览

seo - Isapi Rewrite 从 2 升级到 3 - 查询字符串不可用?

有点晚了,但我刚刚从 Isapi Rewrite 版本 2 升级到了版本 3。

我在使用以下样式的规则时遇到问题:

在这里,我希望将任何额外的查询字符串参数传递给重写的 URL。

这在 IR2 下运行良好,但无法在 IR3 中传递额外的参数。我有每个版本的正则表达式测试器 .exe 实用程序,所以我尝试了这些。

如果我输入/seo-friendly/?hello=world,IR2 的正则表达式测试器会显示$1: ?hello=world$2: hello=world 这是完美的。

但是 IR3 说$0: /seo-friendly/$1$2是空白的。

看起来我无法访问查询字符串变量。

我发现文档中提到了这个标志:

O(正则化)

在处理之前规范化字符串。规范化包括删除 URL 编码、非法字符等。此外,URI 的 IIS 规范化完全删除查询字符串。因此,如果需要查询字符串,则不应使用规范化

但我没有设置这个标志违反我的规则。我可以设置一个全局规则来停止这种(明显的)规范化吗?

0 投票
3 回答
8171 浏览

mod-rewrite - Isapi Rewrite - 在 RewriteRule 中访问查询字符串模式匹配

我正在使用 Isapi Rewrite 3(IIS 的 mod 重写克隆)并尝试根据查询字符串重写 URL - 然后在重写中传递该查询字符串的一部分。

因此,如果我输入这样的 URL:/test/home.cfm?page=default&arbitraryExtraArg=123

我希望将其重写为:/test/index.cfm?page=home&arbitraryExtraArg=123

我有以下条件/规则:

但是永远不会传递额外的查询字符串变量。%1 似乎是空白的。

这就是如何从 RewriteCond 引用模式匹配,对吧?

我在这里想念什么?

谢谢!

编辑:在我看来,RewriteCond 完全被忽略了。这是我的日志文件的样子:

那里应该提到 RewriteCond 模式检查吗?

0 投票
2 回答
831 浏览

url - Mod_rewrite - 如何 301 将旧 URL 重定向到新 URL

我需要获取我网站的一些旧 URL 并执行 301 重定向到新 URL,因为它们已经被编入索引,并且我们不想在更改后失去相关性。旧的 URL 实际上非常丑陋,出于某种原因,我试图重写它的一切都不起作用。这里是:

基本上,我需要将其翻译成如下内容:

从旧 URL 我需要检查用户是否输入了“ExibeCurso.asp”;那么我知道我必须把他送到这里:/curso。我还必须获取查询字符串参数“codCurso”(136)中的整数。我必须为此使用什么正则表达式。我用的是ISAPI_Rewrite 3,它基本上在IIS上实现了htaccess,所以在语法上应该没有区别。谢谢。