Установка UMI.CMS под Eserv
Установка UMI.CMS под Eserv (под acWEB из комплекта Eserv) прерывается с кодом ошибки 13019, т.к. UMI ожидает, что будет устанавливаться под Apache, не смотря на то, что "Вариант 4" системных требований UMI.CMS гласит "Apache или другой сервер под ОС Microsoft Windows".Чтобы все-таки установить UMI.CMS придётся модифицировать CGI-переменную SERVER_SOFTWARE, чтобы она содержала подстроку "apache". Для этого замените acWEB4.exe на вариант из этого файла:
http://www.eserv.ru/~support/files/acWEB_umi_apache_mimikry.rar
В этой версии acWEB в режиме CGI представляется как "Eserv/5.x (apache compatible)", этого достаточно для достижения полной совместимости с UMI.CMS
Для настройки ЧПУ в UMI используются rewrite-правила в .htaccess (PATH_INFO в UMI не поддерживается). Аналогичные правила модификации Uri в acWEB можно записать в файл Prepro.rules.txt в следующем виде:
FILENAME FILE-EXISTS 0=
[IF]
\ если запрошенный файл отсутствует, то отдаем "виртуальный путь" php-скриптам
Cgi {HTTP[PhpBin]}
Uri *.xml | " /index.php?xmlMode=force&path={URI 4 -}&{QUERY_STRING}" SetRwUri \EOF
Uri *.json | " /index.php?jsonMode=force&viewMode=full&path={URI 5 -}&{QUERY_STRING}" SetRwUri \EOF
Uri /udata/* | " /releaseStreams.php?scheme=udata&path={URI 7 /STRING}?{QUERY_STRING}" SetRwUri \EOF
Uri /upage/* | " /releaseStreams.php?scheme=upage&path={URI 7 /STRING}?{QUERY_STRING}" SetRwUri \EOF
Uri /uobject/* | " /releaseStreams.php?scheme=uobject&path={URI 9 /STRING}?{QUERY_STRING}" SetRwUri \EOF
Uri /ufs/* | " /releaseStreams.php?scheme=ufs&path={URI 5 /STRING}?{QUERY_STRING}" SetRwUri \EOF
Uri /usel/* | " /releaseStreams.php?scheme=usel&path={URI 6 /STRING}?{QUERY_STRING}" SetRwUri \EOF
Uri /ulang/* | " /releaseStreams.php?scheme=ulang&path={URI 7 /STRING}?{QUERY_STRING}" SetRwUri \EOF
Uri /utype/* | " /releaseStreams.php?scheme=utype&path={URI 7 /STRING}?{QUERY_STRING}" SetRwUri \EOF
Uri /umess/* | " /releaseStreams.php?scheme=umess&path={URI 7 /STRING}?{QUERY_STRING}" SetRwUri \EOF
Uri /uhttp/* | " /releaseStreams.php?scheme=uhttp&path={URI 7 /STRING}?{QUERY_STRING}" SetRwUri \EOF
" /index.php?path={URI}&{QUERY_STRING}" SetRwUri
[THEN]
По любым вопросам обращайтесь в техподдержку Eserv.