标签: isapi-rewrite

为什么在IIS 8.5(Win 2012 R2)中为asp.net错误提供"200 OK"的空白页?

我已经设置了一个运行IIS 8.5的新Windows 2012 R2服务器.

我们注意到,当发生错误(例如,ASP.NET状态服务未运行)而不是输出500状态代码错误屏幕时,请求实际上返回一个完全空白的页面(只有标题 - 没有内容).我们显然需要查看错误并为错误提供200 OK可能对Google等索引器或任何wesite监控工具(这不会通知我们该网站已脱机)存在问题.

在我们的其他服务器(IIS 7)上,我们看到"黄色错误屏幕",其中包含"无法连接到状态服务器"(或类似)的消息.

这可能有什么问题?是否有一些设置可以全局禁用所有错误(但如果它也提供200状态代码,这将是愚蠢的)或者其他可能阻碍其他方式?

唯一可能干扰的是我们在服务器上安装了ISAPI_Rewrite(但这通常不会导致这个问题).

谢谢!

asp.net iis isapi-rewrite iis-8 windows-server-2012-r2

14
推荐指数
3
解决办法
1万
查看次数

IIS重写规则 - 忽略localhost

我有以下规则,它可以很好地将我的www请求重定向到根目录.

但是我似乎无法将其关闭为localhost.这就是我现在拥有的:

    <rule name="CanonicalHostNameRule1">
      <match url="(.*)" />
      <conditions>
        <add input="{HTTP_HOST}" pattern="^example\.com$" negate="true" />
      </conditions>
      <action type="Redirect" url="https://example.com/{R:1}" />
    </rule>
Run Code Online (Sandbox Code Playgroud)

我尝试了很多东西,包括:

    <rule name="CanonicalHostNameRule1">
      <match url="(.*)" />
      <conditions>
        <add input="{HTTP_HOST}" pattern="^localhost$" negate="true" />
        <add input="{HTTP_HOST}" pattern="^example\.com$" negate="true" />
      </conditions>
      <action type="Redirect" url="https://example.com/{R:1}" />
    </rule>
Run Code Online (Sandbox Code Playgroud)

你能帮忙吗?正则表达是我的弱点唉

regex iis isapi-rewrite

13
推荐指数
1
解决办法
436
查看次数

我可以在htaccess中执行if/then/else吗?

我有一个网站根据子域提供某些内容.所以它是同一组文件,并且网站页面中的标题和一些信息可能会根据子域进行更改.

我需要基于子域进行不同的htpassword身份验证,但无法找到有关如何在htaccess中执行if/then类型事务的信息.

基本上我需要的是这个:

if subdomain ='abc'使用此htpassword文件

if subdomain ='def'使用此htpassword文件

可以这样做吗?

iis .htaccess isapi-rewrite

7
推荐指数
1
解决办法
6061
查看次数

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

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

RewriteCond %{HTTPS} (on)?
RewriteCond %{HTTP:Host} ^(?!www\.)(.+)$ [NC]
RewriteCond %{REQUEST_URI} (.+)
RewriteRule .? http(?%1s)://www.%2%3 [R=301,L]
Run Code Online (Sandbox Code Playgroud)

这大部分都有效,但也将sub.example.com重定向到www.sub.example.com.如何重写上述规则以便子域不会被重定向?

.htaccess isapi-rewrite

6
推荐指数
1
解决办法
2867
查看次数

Isapi过滤器无法在IIS 7上运行(在IIS 6上可以正常工作)

我有一个Isapi dll执行一些基本的URL重写.它在II6上工作正常.但是,现在我的开发机器已升级到Windows 7,我无法在IIS 7下运行它

为了让它发挥作用,还有什么特别需要做的吗?

该网站正在运行经典ASP管道应用程序池(虽然我已尝试过两者)

关于如何解决这个问题的任何建议?

非常感谢

ps将其重写为模块/处理程序不是一种选择.我只想知道如何让现有的DLL在IIS 7上运行.

asp.net iis-7 iis-6 isapi-rewrite isapi

6
推荐指数
1
解决办法
4885
查看次数

将没有www的URL重定向到www

我需要你的帮助.我想测试是否输入了没有www的URL

喜欢example.com它应转发给www.example.com.

mod-rewrite isapi-rewrite url-rewriting

5
推荐指数
1
解决办法
5350
查看次数

ISAPI在IIS Express上重写

随着Visual Studio 2010 SP1和IIS Express的发布,我们希望在我们的本地开发机器上运行我们的asp.net 3.5网站而不是我们的iis5实例.

除了使用ISAPI Rewrite的url重写规则之外,我们所有的代码都运行良好.我们选择ISAPI_Rewrite 3,因为它与apache .htaccess文件非常相似.

我们如何在iis express中使用ISAPI Rewrite?

asp.net iis isapi-rewrite url-rewriting iis-express

5
推荐指数
1
解决办法
1966
查看次数

Global.asax没有为IIS7中的.aspx页面触发

我们运行一个链接重定向服务,它可以处理以各种格式抛出的链接.例如,这些格式之一是将目标URL附加到链接的末尾

HTTP://url.fwd/abcd/http://www.mydomain.com/page.aspx

这是在过去两年中在Windows Server 2003/IIS6上运行的,但现在我们正在尝试迁移到Windows Server 2008/IIS7设置,它不再起作用了.

我已经读过URL中冒号的问题,但它不会影响不以'.aspx'结尾的页面.例如,

HTTP://url.fwd/abcd/http://www.mydomain.com/page.php

会重定向好.

HTTP://url.fwd/abcd/http//www.mydomain.com/page.aspx

也工作正常(注意缺少第二个冒号).尽管URL错误,但它确实由我们的URL转发系统处理,该系统使用自定义404页面.在旧系统上,我们遇到了类似的问题,因此在Global.asax> Application_Error中专门编写了一个方法来处理'.aspx'的情况,并且它工作正常.

在我们的新服务器上,Application_Error永远不会被Global.asax抛出.相反,我得到一个System.NotSupportedException - "不支持给定路径的格式".这个System.NotSupportedException是我们在Global.asax页面中处理的确切情况,因此它绝对不会被触发.

我已经更改了几个论坛帖子中指示的注册表项,HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ASP.NET VerificationCompatibility = 1 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\HTTP |参数AllowRestrictedChars = 1

我已经尝试更改.aspx的Handler Mappings设置.

我已经尝试将应用程序池设置为使用经典模式而不是集成,但这会导致完全不同的错误,其中静态内容(如图像和CSS)根本不显示.我已经检查过在Windows功能中启用了静态内容,它确实如此.在经典模式下,'.aspx'请求会抛出两个错误请求错误,绝对没有任何信息.我得到的错误页面的代码是字面上的

错误请求<html> <body>错误请求</ body> </ html>

更新:我已将静态文件处理程序映射更改为此页面中的表单 http://improve.dk/blog/2006/12/11/making-url-rewriting-on-iis7-work-like-iis6 但是正如作者正确指出的那样,这是一种黑客行为,而不是在IIS7下做事的正确方法.它还只修复了经典模式下的静态文件问题.'.aspx'页面仍然在经典模式下抛出错误.

在这一点上,任何想法或意见都会受到高度赞赏.

asp.net iis-7 isapi-rewrite global-asax

4
推荐指数
1
解决办法
2万
查看次数

IIS 重写规则以检查查询字符串并在它不存在时添加它

我正在尝试制定将 URL 参数附加到 URL 的 IIS URL 重写规则。url 参数是hssc. 因此,通过服务器处理的任何 url 都需要该参数。请记住,某些 url 已经有自己的参数,而其他 url 则没有,还有根 url 等,有时需要添加?hssc=1&hssc=- 所以,如果我有这样的 URL:

我还希望 URL 不应该被隐藏(就像在后台重写一样)。我需要 URL 出现在 URL 中,因此当用户复制 URL 或将其添加为书签时,参数就在那里。

我已经设置了条件来匹配它\&hssc|\?hssc- 现在我只需要一种编写 URL 的方法,这样它就会出现并保留已经存在的原始 URL 部分。

regex iis-7 isapi-rewrite url-rewriting url-rewrite-module

4
推荐指数
1
解决办法
2330
查看次数

SEO友好的URL与.htaccess

有人可以帮我修改一些URL吗?

我有(例如)这些页面:

www.mydomain.com/test/gallery.asp?id=2
www.mydomain.com/test/gallery.asp?id=3
Run Code Online (Sandbox Code Playgroud)

并希望他们被要求:

www.mydomain.com/photos/people
www.mydomain.com/photos/wildlife
Run Code Online (Sandbox Code Playgroud)

我正在使用IIS,起初我的托管服务提供商正在使用带有httpd.ini文件的ISAPI_Rewrite,现在他们已经使用.htaccess文件切换到Helicon Ape.请参阅:http://www.isapirewrite.com/http://www.helicontech.com/ape/

我尝试了ISAPI_Rewrite方式:

RewriteRule /photos/people /test/gallery.asp?id=2 [I,L]
RewriteRule /photos/wildlife /test/gallery.asp?id=3 [I,L]
Run Code Online (Sandbox Code Playgroud)

但它不起作用.

建议?

.htaccess isapi-rewrite url-rewriting

2
推荐指数
1
解决办法
682
查看次数

isapi重写调试或测试工具

想知道是否有人知道或有经验,调试一组isapi重写规则?

我有一套非常大的规则,因此手动完成它们并不容易.所以我想知道是否有任何测试工具可用于放入您的规则并传入URL,并查看匹配的规则是什么以及结果URL是什么?

或者失败了,某种先进的日志记录可能会指导我的问题所在.

当我的大脑即将融化时,任何帮助都会受到高度赞赏!

干杯

testing debugging isapi-rewrite

2
推荐指数
1
解决办法
3162
查看次数

如何使用RewriteCond组合标志?

我在IIS7上使用ISAPI-Rewrite.
如何在RewriteCond中组合[NC]和[OR]?[NC,OR]?使用和不使用"www"匹配域的简单方法是什么.?

这是一个草案:

RewriteCond %{HTTP_HOST} ^old-one.com$ [NC,OR]
RewriteCond %{HTTP_HOST} ^www.old-one.com$ [NC,OR]
RewriteCond %{HTTP_HOST} ^old-two.com$ [NC,OR]
RewriteCond %{HTTP_HOST} ^www.old-two.com$ [NC]
RewriteRule ^(.*)$ http://www.new-website.com/$1 [QSA,L,R=301]
Run Code Online (Sandbox Code Playgroud)

.htaccess isapi-rewrite

2
推荐指数
1
解决办法
9002
查看次数

传递非现有目录作为IIS或Apache中的参数

首先看看这个网址:

/sf/ask/tagged/xoxoxo/

此目录不存在,但不知何故stackoverflow可以将最后一个目录作为参数传递给他的基本脚本.

这可以配置IIS或Apache吗?怎么样?

apache iis mod-rewrite isapi-rewrite url-rewriting

1
推荐指数
1
解决办法
1216
查看次数