Проблема с перезаписью URL в codeigniter и IIS 8.5

1

Вот мой файл web.config.

    <?xml version="1.0" encoding="UTF-8"?>
    <configuration>
    <system.webServer>
    <httpErrors errorMode="Detailed" />
        <rewrite>
            <rules>
                <clear />
                <rule name="Rewrite to index.php" enabled="true">
                    <match url="index.php|robots.txt|images|test.php" />
                    <conditions logicalGrouping="MatchAll" trackAllCaptures="false" />
                    <action type="None" />
                </rule>
                <rule name="Rewrite CI Index" enabled="true" patternSyntax="ECMAScript" stopProcessing="true">
                    <match url=".*" ignoreCase="true" negate="false" />
                    <conditions logicalGrouping="MatchAll" trackAllCaptures="true">
                        <add input="{REQUEST_URI}" pattern="bnrmcrz" />
                        <add input="{REQUEST_FILENAME}" pattern="css|js|jpg|jpeg|png|gif|ico|htm|html" negate="true" />
                    </conditions>
                    <action type="Rewrite" url="index.php/{R:0}" logRewrittenUrl="false" />
                </rule>            
            </rules>
        </rewrite>
        <httpRedirect enabled="false" destination="" />
    </system.webServer>
</configuration>

Мне нужен способ сделать регистр символов нечувствительным, а также избавиться от него index.php.

Когда я даю " localhost/testProj ", он отлично работает. В следующий раз я попытаюсь ввести " localhost/TESTproj ". он отображает страницу не найдена. Я действительно хочу, независимо от способа предоставления имени папки, если оно написано одинаково, оно должно перенаправить меня в ту же папку.

Пожалуйста, помогите мне исправить это.

благодаря

Теги:
codeigniter
iis
url-rewriting

1 ответ

0

как ваш пост, я могу угадать имя вашего контроллера testProj. Поэтому, когда вы пытаетесь получить доступ к TESTproj это не существующий контроллер. Итак, Codeigniter через 404 Error.

Поэтому, если вы хотите получить доступ к TESTproj определите это в файле routes.php.

$route['TESTproj'] = 'testProj';
  • 0
    testProj - это имя папки (основная папка codeigniter). Я не указал свой контроллер, так как он установлен как defaultController. В основном, если m правильно .. маршруты могут быть установлены только от имени контроллера и далее. Поправь меня, если не прав.
  • 0
    так что проверьте орфографию вашего URL и base_url тоже
Показать ещё 4 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню