Назад | Перейти на главную страницу

PHP, переопределение URL-адресов с помощью htaccess и перезапись URL-адресов Microsoft IIS?

Я привык работать с серверами Apache, поэтому, когда включен mod_rewrite, я могу создать файл htaccess и использовать перезапись URL.

Вот мой файл htaccess:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]

теперь я создал этот сайт, который использует этот модуль перезаписи URL, но я узнал, что это сервер Microsoft. Могу ли я использовать свой файл htaccess? Что-то мне нужно изменить, чтобы заставить его работать? Как узнать, настроена ли перезапись URL на сервере Microsoft?

Обновить: Можно ли установить бесплатную версию, работающую с файлами htaccess?

Ты можешь импортировать правила Apache mod_rewrite (заметьте, не все из них) в механизм перезаписи URL-адресов Microsoft для IIS7.

Вы также можете установить Фильтр перезаписи Ionics Isapi, аналог mod_rewrite с открытым исходным кодом для IIS 6 и 7. Другой плакат связан с Helicon, который похож, но дороже.

Упомянутые фильтры isapi должны работать нормально. Вы также можете использовать urlrewriting.net или UrlRewriter.NET если вы хотите найти время, чтобы перейти на .net. Оба они бесплатны и позволяют избежать попадания в фильтр ISAPI. Однако ваш лучший вариант - это Модуль перезаписи URL в IIS 7

IIRC, IIS не имеет возможности перезаписи из коробки. Когда нам нужно переписать, мы используем Перезапись ISAPI от HeliconTech. Это не бесплатно, но очень дешево.

Он предоставит вам файл с именем httpd.ini - вы поместите его в корень своего сайта, как если бы вы сделали .HTACCESS, а он сделает все остальное.

Формат файла другой, но это не так который разные.

ISAPI-Rewrite 3 от HeliconTech имеет синтаксис, очень похожий на Apache. Вышеупомянутый конфиг будет работать в ISAPI_Rewrite3 .htaccess без каких-либо изменений.

Вот немного информации о IIS Mod-Rewrite от micronovae. Я только начинаю узнавать об этом после того, как обнаружил, что CrystalTech использует его. Это немного дороже, чем ISAPI_Rewrite.

IIRF (Фильтр перезаписи ISAPI от Ionic) будет работать с этим файлом .htaccess без изменений. Ну надо его переименовать.

Есть некоторые функции, которые есть у Apache mod-rewrite, которых нет у IIRF, но ваш файл .htaccess будет работать без изменений.

Поскольку я вел свой блог WordPress (blog.jaspio.net) на дешевом хосте IIS, мне не разрешили установить фильтр ISAPI.

Затем я наткнулся на Tom Bristol's отличный маленький скрипт ASP чтобы проанализировать файл .htaccess, чтобы убедиться, что у меня есть хорошие чистые ссылки SEO вместо строк запроса.

Попробуй!