карта перезаписи не соответствует

У меня проблемы с тем, что моя карта перезаписи не соответствует вещам:

RewriteMap map txt:rewritemaps\map.txt  [NC]
RewriteCond ${map:$1|NOT_FOUND} !NOT_FOUND [NC]
RewriteRule ^(.+)$  ${map:$1}   [NC, R=301]

На карте около 4500 записей, в том числе:

arctic  /Destinations/Polar-Regions/The-Arctic.aspx

Мой RewriteLog, установленный на уровень 9, регистрирует:

init rewrite engine with requested uri /arctic
Htaccess process request C:\Program Files\ISAPI Rewrite\httpd.conf
Htaccess process request C:\Websites\Path\WebSite\.htaccess
[..]
applying pattern '^(.+)$' to uri 'arctic'
map lookup FAILED: map=map[txt] key=arctic
RewriteCond: input='NOT_FOUND' pattern='NOT_FOUND' =>

Он работает со страницами, которых нет на карте — например, /Contact-Us.aspx, но не со страницами, которые должны совпадать (например, с арктическими). Я попытался изменить расположение флага [NC], удалив RewriteCond и переименовав файл карты (на всякий случай, когда «карта» была зарезервированным ключевым словом). Нет радости. Это также не похоже на проблему с разрешениями.

К вашему сведению, я использую ISAPIRewrite от Helicontech, так как работаю на IIS6.


person Adam Hopkinson    schedule 16.12.2009    source источник


Ответы (3)


Три предложения:

  1. Попробуйте использовать косую черту (/) в качестве разделителя каталогов.
  2. Если это не сработает, попробуйте полный путь.
  3. Попробуйте без RewriteCond.
person Jeremy Stein    schedule 16.12.2009

Если map.txt находится в одной папке с .htaccess, попробуйте следующее определение:

RewriteMap map txt:map.txt  [NC]

Если он находится в другом месте, попробуйте использовать полный путь.

Также рассмотрите возможность обновления до последней сборки ISAPI_Rewrite, если вы еще не используете ее.

person TonyCool    schedule 01.02.2010

У меня была такая же проблема, и я исправил ее с помощью "", попробуйте:

RewriteMap map "txt:rewritemaps\map.txt"  [NC]
RewriteCond ${map:$1|NOT_FOUND} !NOT_FOUND [NC]
RewriteRule "^(.+)$"  "${map:$1}"   [NC, R=301]
person user10094461    schedule 17.07.2018