PHP MVC: htaccess, преобразованный в web.config, выдает ошибку http 404 - PullRequest
0 голосов
/ 23 января 2019

Я установил свой проект в PHP MVC-фреймворке на сервере Windows, но у меня возникают трудности с работой части URL.

Существует два htaccess, один из приложения и общих папок, а другой в общей папке.

Первый:

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule ^$ public/ [L]
RewriteRule (.*) public/$1 [L]
</IfModule>

Я преобразовал в web.config инструмент, предоставленный IIS, и он работает.

Но второй htaccess не работает.

<IfModule mod_rewrite.c>
Options -Multiviews
RewriteEngine On
RewriteBase /public
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule  ^(.+)$ index.php?url=$1 [QSA,L]
</IfModule>

Старинная:

<configuration>
<system.webServer>
<rewrite>
<!--This directive was not converted because it is not supported by IIS: RewriteBase /.-->
<rules>
<rule name="Imported Rule 1" stopProcessing="true">
<match url="^(.+)$" ignoreCase="false" />
<conditions>
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" ignoreCase="false" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsFile" ignoreCase="false" negate="true" />
</conditions>
<action type="Rewrite" url="/public/index.php?url={R:1}" appendQueryString="true" />
</rule>
</rules>
</rewrite>
</system.webServer>

В настоящее время выдается ошибка 500, внутренняя ошибка сервера.

...