重写到我的index.html不与本地IIS一起工作

ehxuflar  于 2023-10-19  发布在  其他
关注(0)|答案(1)|浏览(132)

我已经在我的本地机器上安装了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>

tuwxkamq

tuwxkamq1#

首先,你必须确保在iis中有一个站点与绑定存在。如果不是你可以尝试添加与此特定的ip地址的站点绑定.
然后将下面的规则添加到该站点:

<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>

最新消息:
在我检查了你的网站和文件夹结构后,我发现你正在使用网站根文件夹到C:\inetpub\wwwroot\,但web.config和规则被添加到C:\inetpub\wwwroot\scheduler文件夹,这是规则不起作用的原因。我想建议你把URL重写规则移动到C:\inetpub\wwwroot\路径

相关问题