删除Codeigniter的index.php在IIS上的子文件夹中?

时间:2016-09-01 07:09:40

标签: php codeigniter iis url-rewriting

我想在Windows Server 2012 r2上有重写规则

我有这样的网址

localhost/mysite1/home
localhost/mysite2/home

及其展示404 page not found。但是当我像这样添加index.php

localhost/mysite1/index.php/home
localhost/mysite2/index.php/home

它有效。

我想使用重写规则删除我的codeigniter网站的index.php

我已经在stackoverflow

中搜索了system.webserver

我在web.config文件中提出了这个问题:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>

    <system.webServer>

        <httpErrors errorMode="Detailed" />
        <asp scriptErrorSentToBrowser="true"/>

        <rewrite>
        <rules>
            <rule name="RuleRemoveIndex" 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/{R:1}" appendQueryString="true"/>
            </rule>
        </rules>
        </rewrite>

    </system.webServer>

    <system.web>
        <customErrors mode="Off"/>
        <compilation debug="true"/>
    </system.web>

</configuration>

它给我一个这样的网址请求

localhost/index.php/mysite1/home
localhost/index.php/mysite2/home

请帮忙。

抱歉我的英文不好

0 个答案:

没有答案