我有这个网络配置:
<?xml version="1.0"?>
<configuration>
<configSections>
</configSections>
<system.web>
<compilation debug="true" targetFramework="4.0"/>
<!--maxRequestLength = maximum upload size =- 4096KB = 4MB-->
<httpRuntime maxRequestLength="409600000"/>
</system.web>
<system.webServer>
<rewrite>
<rules>
<!--The following rule will only work when published-->
<rule name="Construction" stopProcessing="true">
<match url="Construction\.aspx" negate="true"/>
<conditions>
<!-- dont ignore my own ip -->
<add input="{REMOTE_ADDR}" pattern="XXX.XXX.XXX.XXX" negate="true"/>
</conditions>
<action type="Redirect" url="Construction.aspx" redirectType="Found"/>
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
它适用于本地计算机上的IIS,但在其他计算机上,我最终遇到以下问题:
rewrite
部分时出现500错误。当我删除它一切正常。它出了什么问题?
答案 0 :(得分:0)
在我使用rewrite
的情况下,我没有在match的url属性中转义句点。你试过<match url="^Construction.aspx$" negate="true"/>
吗?
不可否认,这是一段时间,因为我已经花了一段时间才开始研究这个文档。
答案 1 :(得分:0)
我已经按照@CohenA Detailed 500 error message, ASP + IIS 7.5的回答来帮助解决500个错误的完整细节。我只是留下它注释掉,直到我遇到错误,所以我不必记住它。
您是否因为重写问题而审核了this answer?不确定你想用ReWrite做什么,但也许你想使用规则#2
&LT; match url =“^ Construction $”/&gt;
或者,您是否错过了ReDirect上的领先/?
&LT; action type =“Redirect”url =“/ Construction.aspx”redirectType =“Found”/&gt;
答案 2 :(得分:0)
我只是加入了&lt;配置&gt;标签:
<configSections>
<sectionGroup name="system.webServer">
<sectionGroup name="rewrite">
<section name="rewriteMaps" overrideModeDefault="Allow" />
<section name="rules" overrideModeDefault="Allow" />
</sectionGroup>
</sectionGroup>
</configSections>
所以现在它没有错误输出,但它也没有读取重写
答案 3 :(得分:0)
您可以尝试以下配置。这有重写块,它将来到该文件夹的请求重定向到index.php页面,并且还将输出详细错误而不是自定义/通用错误页面。这是在托管IIS 8.5的Godaddy Windows上测试的。希望这有帮助!
<configuration>
<system.webServer>
<httpErrors errorMode="Detailed"></httpErrors>
<asp scriptErrorSentToBrowser="true"></asp>
<rewrite>
<rules>
<rule name="your rule" stopProcessing="true">
<match url="(.*)$" ignoreCase="false" />
<conditions>
<add input="{REQUEST_FILENAME}" matchType="IsFile" ignoreCase="false" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" ignoreCase="false" negate="true" />
</conditions>
<action type="Rewrite" url="index.php?request={R:1}" appendQueryString="true" />
</rule>
</rules>
</rewrite>
</system.webServer>
<system.web>
<customErrors mode="Off"></customErrors>
<compilation debug="true"></compilation>
</system.web>
</configuration>