На днях, встала задача протестировать этот корпоративный портал в коробочной версии. Потратив немало времени и сил, решил описать сей процесс, чтобы сэкономить кому-то лишние усилия.
Начнем с того, что в своей организации у меня «экосистема» ПО построена на базе Windows систем и присутствует большое количество прикладных приложений, написанных под наши задачи и требовалось использование MSSQL для их интеграции. Посему, было решено выделить виртуальную машину с Windows Server для тестирования продукта.

Почитав предлагаемые решения, решил попробовать три варианта:

1. Установка портала на свой IIS сервер с PHP и MSSQL

Первый пункт завершился по началу неудачно: пройдя все шаги настройки по инструкции от разработчиков, в установленном портале не работала половина функций. Как показал анализ и обращение к техподдержке, проблемы была в переопределении URL адресов. Как мне сказали, успешного запуска под IIS пока не получалось. Решил проверить дальше.

2. Установка предлагаемого комплекта с веб-окружением (апач с PHP, mysql и XMPP).

Установка комплекта «по-умолчанию» завелась сразу, но с некоторыми проблемами. Скорость работы была довольно низкой, попытки настроить кэш и сжатие особо не помогли. Переключение в HTTPS не работало, не смотря на отдельно выведенную настройку в консоли. Видимо не зря на официальном сайте стояла приписочка " Пакет «Битрикс: Веб-окружение» рекомендуется использовать только для тестирования ознакомительных версий. Для работы реального проекта рекомендуется BitrixVM".

3. Виртуальная машина битрикс с cent-os.

Некоторые режимы при выборе установки не работали. Пошла только установка демонстрационной версии. Отсутствовал выбор используемой базы данных. В системе не была установлена поддержка MSSQL.

Пришлось вернуться к первому варианту. Помучав то, что есть по этому в интернете выяснил, что правила для переопределения URL прописаны в .htaccess файле и IIS его не понимает.Решил попробовать сконвертировать правила .htaccess в понятный для сервера вид, получив следующую секцию для файла web.config:

 <rewrite>
            <rules>
                <rule name="bitrix rewrite URL" stopProcessing="true">
                    <match url="^(.*)$" ignoreCase="false" />
                    <conditions logicalGrouping="MatchAll">
                        <add input="{REQUEST_FILENAME}" matchType="IsFile" ignoreCase="false" negate="true" />
                        <add input="{REQUEST_FILENAME}" matchType="IsDirectory" ignoreCase="false" negate="true" />
                        <add input="{REQUEST_FILENAME}" pattern="/bitrix/urlrewrite.php$" ignoreCase="false" negate="true" />
                    </conditions>
                    <action type="Rewrite" url="/bitrix/urlrewrite.php" />
                </rule>
            </rules>
        </rewrite>



Все недостающие функции вроде как заработали, и можно бы уже порадоваться, но войдя под учеткой из Active Directory отвалился чат. Погрешив на IIS, перелопатил все настройки, но ничего не помогло. И только опытным путем была найдена причина:
мастер настройки портала некорректно создает группы пользователей и у них нет доступа к чату, а иногда и к главной странице.

Для исправления этой проблемы оказалось достаточно заменить группы, к которым добавляется пользователь после авторизации из AD

image

В правой выделенной части, достаточно заменить группы с префиксом «SITE_WIZARD:» на подобные группы без этого префикса.

После установки кэша для PHP производительность тоже подтянулась до приемлемого уровня. Для меня осталось решить только проблемы не работающего автообновления и стыковки почтового домена по IMAP, но это уже вопросы к техподдержке, на которые пока ответа не получено. А после, можно и решить вопрос о приобретении. Хотя некий осадочек, от недоработок в установке продукта конечно остался.

Надеюсь это поможет кому-нибудь)

Комментарии (10)


  1. awMinor
    29.03.2016 12:07

    Спасибо за статью. Очень инетерсно было бы узнать как себя чувствует битрикс на такой не обычной для него конфигурации в сравнении с традиционным apache/nginx, PHP, MySQL.
    Во втором пункте у вас написано XMPP, в моем понимании это джабер? Или я ошибаюсь?


  1. Evil_Demon
    29.03.2016 12:09

    Верно. В наборе "вэб-окружение" от производителя он идёт комплектом, но какой именно — не разбирался. Ещё предстоит разобраться, можно ли битрикс связать с установленным у нас Openfire.


    1. awMinor
      29.03.2016 12:23

      И я так понял, что у вас была задача так же интегрировать в битрикс AD? Возможно у вас найдется время более подробно осветить этот момент (возможно даже в новой статье)? Это очень не тривиальная задача как мне кажется. Очень интересна техническая сторона как это работает и как это интегрируется.


      1. Evil_Demon
        29.03.2016 12:27

        Честно говоря, я пока дальше базовой интеграции групп AD и ликвидации той шибки мастера первоначальной настройки не заходил, это всё ещё впереди. Но вполне могу расписать попозже, если будет интересно, когда завершим тестирование демо версии. В принципе, насколько я понял, это изначально предусмотренно в битрикс24, хотя и с несколько кривым мастером.


  1. Diden05
    29.03.2016 17:38

    А теперь самый главный вопрос, зачем нужно это извращение? Вы сами себя лишили кучи функционала в Б24, например все что связанно с модулем push&pull


    1. Evil_Demon
      29.03.2016 17:57

      1. Удобство в администрировании
      2. Отсутствие подходящих альтернатив под Windows
      3. Не пришлось морочить голову с допиливанием cent-os для использования ms sql.
        Остальные причины указал в начале статьи.


      1. IvanPanfilov
        29.03.2016 19:17

        спешу вас обрадовать

        www.instagram.com/p/BBFrGcjtXTs


        1. Evil_Demon
          29.03.2016 19:18

          Вот даже как, это серьёзный момент, влияющий на смысл покупки этого продукта. Спасибо за информацию.


  1. citius
    29.03.2016 18:12

    Отпишите теперь в поддержку битрикса, пусть учатся в IIS реврайты настраивать. У них ведь так и не заработало? :)


  1. TihoFih
    30.03.2016 13:36

    Был схожий опыт. После того, как был куплен Битрикс, тоже решили поставить его на Windows. Мелькали смутные мысли о «знакомая среда, администрирование должно быть проще», «понадобится интеграция — будет проще сделать, так как ms sql уже используется в ряде систем»,
    «а как там будет с AD — оно же не заработает или будет кривым» и вообще этот непонятный линукс возьмёт да загнётся, что мы будем делать?
    На практике все эти «мысли» оказались не состоятельными.
    1) Сайт регулярно сообщал о «internal server error», что лечилось перезагрузкой iis.
    2) Работал медленно, ощутимо медленнее, чем демо-виртуалка от Битрикса.
    3) Часть функционала не поддерживается — тут уже написали про «push&pull»
    4) Поддержка Битрикса заворачивает любые вопросы к «у вас iss, вот и обращайтесь в поддержку microsoft»
    5) Росло ощущение, что такая конфигурация оставляет нас где-то на обочине в силу своей непопуярности
    Потому осуществили переезд на виртуалку Битрикса. Спустя два года. Как ни странно, но задачи интеграции вполне успешно пережили смену ms sql на my sql. Интеграция с AD после переезда на centos вполне работоспособна — пользователей из AD загружаются, на портале аутентифицируются без ввода пароля. Скорость работы заметно подрасла. И самое главное — совершенно стабильная работа сайта. Ни одной ошибки 500 с тех пор больше не было.
    Тут конечно можно сказать что «вы не умеете его (Битрикс на Windows) готовить». Да, не умеем. И судя по всему, в этом умении совершенно нет никакой необходимости.