измените codeigniter .htaccess на web.config ошибка

Я пытался использовать codeigniter на IIS, я смог настроить php для работы на IIS, но когда я пытался изменить .htaccess на web.config, это выдает мне ошибку

мой код доступа

RewriteEngine on
Options +FollowSymLinks

RewriteRule ^admin(.*) index.php/admin$1
RewriteRule ^supervisor/([0-9]+)(.*) index.php/supervisor_$1/$2
RewriteRule ^moder/(.*)/([0-9]+)(.*) index.php/moder/$1/$2
rewriteRule ^(login|logoff)(.*) index.php/base/$1$2
RewriteRule ^(attachment|meeting|thread|attachments|profile|search|roles|cat)(.*) index.php/moder/$1$2
RewriteRule ^(about|contact|new_majlis|sk|supervideo|superandsk|guest)(.*) index.php/page/$1$2
RewriteRule ^(2.2-release-notes)(.*) index.php/page/release_notes
RewriteRule ^page/(change_lang)/(.*) index.php/page/$1/$2

и для моего кода web.config:

       <rewrite>
<rules>
<rule name="rule 1m">
<match url="^admin(.*)"  />
<action type="Rewrite" url="/index.php/admin{R:1}"  />
</rule>
<rule name="rule 2m">
<match url="^supervisor/([0-9]+)(.*)"  />
<action type="Rewrite" url="/index.php/supervisor_{R:1}/{R:2}"  />
</rule>
<rule name="rule 3m">
<match url="^moder/(.*)/([0-9]+)(.*)"  />
<action type="Rewrite" url="/index.php/moder/{R:1}/{R:2}"  />
</rule>
<rule name="rule 4m">
<match url="^(login|logoff)(.*)"  />
<action type="Rewrite" url="/index.php/base/{R:1}{R:2}"  />
</rule>
<rule name="rule 5m">
<match url="^(attachment|meeting|thread|attachments|profile|search|roles|cat)(.*)"  />
<action type="Rewrite" url="/index.php/moder/{R:1}{R:2}"  />
</rule>
<rule name="rule 6m">
<match url="^(about|contact|new_majlis|sk|supervideo|superandsk|guest)(.*)"  />
<action type="Rewrite" url="/index.php/page/{R:1}{R:2}"  />
</rule>
<rule name="rule 7m">
<match url="^(2.2-release-notes)(.*)"  />
<action type="Rewrite" url="/index.php/page/release_notes"  />
</rule>
<rule name="rule 8m">
<match url="^page/(change_lang)/(.*)"  />
<action type="Rewrite" url="/index.php/page/{R:1}/{R:2}"  />
</rule>
</rules>
</rewrite>

я все еще получаю этот экран

введите описание изображения здесь

0

Решение

Codeigniter имеет свой собственный класс маршрутизации, который сделает вашу жизнь намного проще, особенно если есть возможность переключения между серверными ОС.

Следующий файл web.config — это основные принципы работы CI с IIS:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="Rewrite to index.php">
<match url="index.php|robots.txt|images|test.php" />
<action type="None" />
</rule>
<rule name="Rewrite CI Index">
<match url=".*" />
<conditions>
<add input="{REQUEST_FILENAME}" pattern="css|js|jpg|jpeg|png|gif|ico|htm|html|ttf|woff" negate="true" />
</conditions>
<action type="Rewrite" url="index.php/{R:0}" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>

Затем в приложение / Config / routes.php пример строки будет

$route['page/(change_lang)/(.*)'] = 'page/$1/$2';

Надеюсь это поможет!

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]