Не удается удалить index.php из URL-адреса Kohana в IIS 7 - PullRequest
1 голос
/ 02 марта 2012

Я знаю, что уже есть несколько других сообщений на эту тему, но я перепробовал все, что они сказали, и я не могу заставить его работать.

У меня установлен фреймворк php kohana в http://localhost/kohana, и он работает. Проблема в том, что я не могу удалить /index.php/ из моего URL.

Я попытался импортировать файл .htaccess из установки в модуль перезаписи URL IIS, но безуспешно.

Мой загрузчик выглядит следующим образом

Kohana::init(array(
'base_url'   => '/kohana',
'index_file' => ''
));

Мой web.config, который я вставил в директорию / kohana, выглядит так

<configuration>
<system.webServer>
    <rewrite>
        <rules>
            <rule name="Imported Rule 1" stopProcessing="true">
                <match url="^(?:application|modules|system)\b.*" ignoreCase="false" />
                <action type="Rewrite" url="index.php/{R:0}" />
            </rule>
            <rule name="Imported Rule 2">
                <match url=".*" ignoreCase="false" />
                <conditions logicalGrouping="MatchAll">
                    <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:0}" />
            </rule>
        </rules>
    </rewrite>
</system.webServer>

Я также пробовал правила перезаписи на этой странице

Кажется, ничего не работает. Если я иду к http://localhost/kohana/index.php/welcome, это работает. Если перейти к http://localhost/kohana/welcome, я получу ошибку 404 от IIS (не 404 в кохане).

Мне кажется, что я бью головой об стену, есть идеи?

Ответы [ 3 ]

1 голос
/ 13 ноября 2012

У меня была такая же проблема, и я скачал этот файл http://www.iis.net/downloads/microsoft/url-rewrite

Затем я снова открыл IIS и увидел, что появилась новая опция «URL Rewrite». В правой панели URL Rewrite есть ссылка, помеченная как «Import Rules ...», поэтому я импортировал «.htaccess» и удалил строку «RewriteBase /», потому что возникла ошибка. Тогда проблема решена!

Шаг за шагом:

  • Скачать / установить http://www.iis.net/downloads/microsoft/url-rewrite
  • Перейти к IIS Manager: sites / [YOUR_DOMAIN]
  • Открыть новый модуль «URL Rewrite»
  • Открыть нужную ссылку «Правила импорта ...»
  • Импортируйте ваш файл ".htaccess" и удалите строку "RewriteBase /"
  • Экономьте!

Ну, я надеюсь, что это кому-нибудь поможет, потому что я не нашел пошагового решения этой проблемы.

Извините за мой английский.

1 голос
/ 02 марта 2012

Ваш файл web.config в порядке, я использую то же самое и никогда не было проблем.Я думаю, что проблема может быть в вашем bootstrap.php.Попробуйте это:

Kohana::init(array(
   'base_url'   => '/kohana/',
   'index_file' => FALSE
));
0 голосов
/ 02 марта 2012

Я просто сдался и пошел с Apache на моем сервере Windows.Удаление index.php с первого раза сработало как чудо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...