我已经在我的本地机器上安装了IIS(IP地址为192.168.0.19)。
我的配置web.config文件位于C:\inetpub\wwwroot\scheduler
-我的网站应用程序被称为调度程序,看起来像这样:
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="Force Index.html" enabled="true" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{REQUEST_URI}" matchType="IsDirectory" negate="true" />
<add input="{REQUEST_URI}" matchType="IsFile" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
</conditions>
<action type="Rewrite" url="/index.html" />
</rule>
<rule name="Redirect index.html" stopProcessing="true">
<match url="(.*)" />
<conditions logicalGrouping="MatchAll" trackAllCaptures="false" />
<action type="Redirect" url="index.html/" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
长话短说,我认为如果我在url中指定以https://192.168.0.19开头的任何内容,都会重定向到我的web应用程序C:\inetpub\wwwroot\scheduler
的index.html。但事实并非如此。它总是显示错误HTTP Error 404.0 - Not Found
。有人能帮忙把这个重写的东西。
我当前的web.config文件是:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="redirect to scheduler" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{HTTP_HOST}" pattern="^192.168.0.19$" />
<add input="{HTTPS}" pattern="on" />
</conditions>
<action type="Redirect" url="/scheduler/index.html" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
1条答案
按热度按时间tuwxkamq1#
首先,你必须确保在iis中有一个站点与绑定存在。如果不是你可以尝试添加与此特定的ip地址的站点绑定.
然后将下面的规则添加到该站点:
最新消息:
在我检查了你的网站和文件夹结构后,我发现你正在使用网站根文件夹到C:\inetpub\wwwroot\,但web.config和规则被添加到C:\inetpub\wwwroot\scheduler文件夹,这是规则不起作用的原因。我想建议你把URL重写规则移动到C:\inetpub\wwwroot\路径