Уфф !!!Ой!Боже мой !!!
Недавно я сделал панель управления админкой с CI и бакалейной крушкой.Он отлично работал с WAMP на моем локальном сервере с красивым URL и перенаправлением.Я говорил о том, что CI - лучшая структура, в которой я когда-либо работал.Это так просто в использовании и очень хорошо задокументировано!в CodeIgniter.
Но когда я перенес свою админ-панель на IIS-сервер 7.XX, кажется, мой кошмар начинается.Все останавливалось. Без перенаправления, без отображения ошибок, ничего не происходило.Мне было так страшно, почему это происходит.Копаю гугл, переполнение стека, CI форум почти 6 часов.Я ничего не получил нигде.Мне было так грустно: (
Я не могу думать, что мне следует делать. Тогда я обрел спокойствие и успокоился и начал шаг за шагом пересматривать все, что здесь:
1. Set error reporting on
2. Check php info
3. Check redirect/rewrite
4. Check mysql/mysqli extension loaded or not in IIS server
5. Converted my .htaccess file rule with web.config rule (Really helped me)
6. Put web.config file in main directory (CI working folder) not in root folder
Как преобразовать .htaccess в web.config?
Затем я обнаружил, что все правильно, за исключением того, что расширение «mysqli» не было загружено на IIS Server и мои учетные данные конфигурации базы данных были неправильнымиЗатем я внес изменения в php.ini (проверьте 'phpinfo ()', чтобы найти путь php.ini на IIS Server), строку № 881 с расширением uncomment = php_mysqli.dll.
Вот мои настройки конфигурации CI:
$config['base_url'] = '';
$config['index_page'] = '';
$config['uri_protocol'] = 'REQUEST_URI';
После этого, снова откройте мою административную панель CI !!!!!! Все вау !! вау !! работает как шарм :) хе хе ...Я был так счастлив :):)
Вот мой файл web.config
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="Imported Rule 1">
<match url="(.*)" ignoreCase="false" />
<conditions logicalGrouping="MatchAll">
<add input="{HTTPS}" pattern="off" ignoreCase="false" />
</conditions>
<action type="Redirect" url="https://{HTTP_HOST}{URL}" redirectType="Found" />
</rule>
<rule name="Imported Rule 1-1" stopProcessing="true">
<match url="^(.*)$" ignoreCase="false" />
<conditions logicalGrouping="MatchAll">
<add input="{URL}" pattern="^system.*" ignoreCase="false" />
</conditions>
<action type="Rewrite" url="index.php?/{R:1}" appendQueryString="false" />
</rule>
<rule name="Imported Rule 2" stopProcessing="true">
<match url="^(.*)$" ignoreCase="false" />
<conditions logicalGrouping="MatchAll">
<add input="{URL}" pattern="^application.*" ignoreCase="false" />
</conditions>
<action type="Rewrite" url="/index.php?/{R:1}" appendQueryString="false" />
</rule>
<rule name="Imported Rule 3" stopProcessing="true">
<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:1}" appendQueryString="false" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
Вот мой красивый тип URL
https://mysite.abc.com/administrator/admin/showUsers
administrator is my admin folder
admin is my controller
and showUsers in my controller method
Надеюсь, мой неудачный опыт будетпомогите кому-нибудь :) 1027 *