Zend Framework на IIS6 с перезаписью ISAPI

Я пытаюсь переместить приложение Zend из Apache2 в IIS6, поэтому я решил установить ISAPI Rewrite 3, как рекомендовано здесь, поэтому я скопировал папку дырочного приложения в папку c:\inetpub\wwwroot\ и сделал так, чтобы веб-сайт IIS по умолчанию указывал в папку / публично.

Теперь мой.htaccess в /public выглядит следующим образом.

RewriteRule (?!\.(js|ico|gif|jpg|png|css|swf))$ index.php

Но ничего не происходит, я могу получить доступ к домашней странице в порядке, и статические файлы тоже, но мои URL не переписываются, так что ни один из моих контроллеров не будет работать. Любая идея? Спасибо!

1 ответ

Решение

Если вы используете ISAPI_Rewrite 3, вам нужно будет использовать версию правил Apache, поскольку она совместима с Apache, т.е.

RewriteEngine on
RewriteBase /
RewriteRule !\.(js|ico|txt|gif|jpg|png|css)$ index.php

или лучше

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php
Другие вопросы по тегам