Я был сумасшедшим с этой проблемой в течение 3 дней, и как бы я ни искал Google или не читал веб-сайт Helion, я не могу понять, что я делаю неправильно. Поэтому я надеюсь, что кто-то будет добр, чтобы помочь мне.Есть ли что-то не так с моим кодом перезаписи в .htaccess файле
Я использую файл .htaccess
, чтобы создать URL-адрес поисковой системы, и он хорошо работал уже несколько лет.
Теперь моя веб-хостинга перенесла мой сайт на новый сервер Windows IIS8.5, и переписывание больше не работает. Они говорят мне, что используют Helicon Ape (не уверен, что это такое). Но я не могу найти что-либо на веб-сайте Helicon, который имеет для меня смысл, поскольку он слишком технический для моего старого пенсионера.
Вот пример кода, который используется для работы на старом сервере:
# Helicon ISAPI_Rewrite configuration file
RewriteEngine on
RewriteBase/
RewriteRule ^uk-bed-breakfast-(.*)\.htm /bed-and-breakfast/region.asp\?county=$1 [QSA]
Это используется для включения
www.mydomain.com/bed-and-breakfast/region.asp?county=first
в
www.mydomain.com/uk-bed-breakfast-first.htm
Теперь я получаю когда я использую второй URL, это ошибка 404.
Нужно ли мне делать какие-либо изменения в соответствии с новой версией IIS или Helicon Ape Rewrite, и если да, то они
Не слишком уверен, но вы можете попробовать удалить «RewriteBase». Также существует вероятность того, что хостинг-провайдер не включил 'rewrite_module' в' httpd.conf' - вы всегда можете определить это, добавив в текст файла тубелярный/случайный текст (если вы получаете внутреннюю ошибку сервера, то модуль включен). –
Из того, что я могу собрать, модуль Helicon-Ape .Net - это эмулятор Apache, который означает, что он не обязательно будет «похож на», если вы прочитали [совместимость с Apache] (http://www.helicontech.com/ ape/doc/compatible.htm) есть полезная диаграмма, показывающая доступность определенных функций на разных платформах? В статье говорится, что «Helicon Ape предназначен для поддержания максимальной совместимости с Apache. Хотя эта цель была достигнута на очень высоком уровне, ** некоторые функции могут быть реализованы не потому, что они слишком ограничены для дизайна Apache или UNIX, и их реализация в IIS бессмысленно **. * * – Lankymart
Я могу просто раскалывать волосы, но это правило 'RewriteRule^uk-bed-breakfast-(. *) \. htm /bed-and-breakfast/region.asp\?county=$1 [QSA] 'не будет соответствовать' www.mydomain.com/bed-and-breakfast.asp? county = first' есть ли какой-то конфиг, который вы не видите? Не должно быть правила ReWriteRule^uk-bed-breakfast - (. *) \. Htm /bed-and-breakfast.asp\?county=$1 [QSA] '? – Lankymart