Устанавливаем и настраиваем сервис 1С:Предприятие 8 через Интернет (1С:Фреш)
В данной статье мы подробно расскажем о развертывании сервиса, который работает по технологии 1CFresh, работающего на одном Windows-сервере. Опишем все возможные проблемы, которые могут возникнуть во время работы, а также расскажем об их решении. Обратите внимание, что система Windows-сервер, взята, как пример, сам сервис может работать практически с любыми ОС. Мы детально рассмотрим сложные и непонятные ситуации, которые могут возникнуть при самостоятельной установки сервиса.
Перенос файлов на сервер для настройки 1cFresh
Развертывание сервиса происходит с участием множества файлов, настроек и скриптов. Для исключения ошибок, мы рекомендуем использовать уже готовые файлы настроек из поставляемого вместе с документацией архива.
Если вы используете на хост-компьютере файл-менеджер Total Commander, то его настройку рекомендуется провести через подключение к серверу 1cFreshWin.local. Также можно пересылать файлы с помощью буфер обмена с помощью следующих комбинаций Ctrl + C/Ctrl + V или Ctrl + Ins/Shift + Ins.
Установка и настройка СУБД PostgreSQL
Установка СУБД, довольна проста и проблем с ней возникнуть не должно, но все давайте рассмотрим некоторые важные моменты.
При установке 64-битной версии СУБД PostgreSQL в подкаталог bin (в нашем случае – «C:\Program Files\PostgreSQL\9.4.2-1.1C\bin») стандартно устанавливается утилита администрирования баз данных – PgAdmin3. Если у вас возникли проблемы с 64-битной утилитой PgAdmin3, то вы можете установить отдельно 32-битную версию утилиты. В результате будет установлена 32-битная версия PgAdmin3 (в нашем случае в каталог «C:\Program Files (x86)\PgAdmin3\1.20\bin\»). В заключение нужно перезагрузить сервер (виртуальную машину), и после этого можно будет подключиться к серверу СУБД.
Настройка связи при подключении по протоколу IPv6
При добавлении новой информационной базы в кластер серверов «1С:Предприятия» может возникнуть ошибка подключения сервера «1С:Предприятия» по протоколу IPv6 к PostgreSQL – «FATAL: no pg_hba.conf entry for host…». Если вы увидели такую ошибку, вам необходимо отредактировать конфигурационный файл pg_hba.conf (в нашем случае он находится в каталоге «C:\Program Files\PostgreSQL\9.4.2-1.1C\data»). В конце файла нужно прописать pg_hba.conf строку, разрешающую подключения к PostgreSQL по протоколу IPv6 от любых хостов также, как и по протоколу IPv4.
Затем нужно перезагрузить виртуальную машину, и после этого можно будет добавить новую информационную базу в кластер.
Включение и настройка IIS
Добавление роли IIS на сервер. Диспетчер сервера отвечает за выполнение роли IIS. Порядок выполнения команд и их вид будет зависеть от установленной ОС. Добавление сайтов публикаций. Если вы добавляете сайты в диспетчер IIS, имя узла нужно задавать, как «*», а не «1cfreshwin.local», если вы проверяете работу сервиса на локальном компьютере.
Публикация приложений на веб-сервере
При выполнении публикации приложений на веб-сервере необходимо учитывать один момент. Преобразовывать в приложение необходимо не только папки публикаций самих баз, но и их родительские папки. Например, все внешние публикации информационных баз у нас находятся в папке «a» (C:\inetpub\wwwroot\1cfresh_ext\a), а внутренние публикации – в папке «int» (C:\inetpub\wwwroot\1cfresh_int\int).
Когда вы выполняете преобразование папок в приложения, убедитесь, что значение поля Пул приложения (Application pool). Должно быть прописано, как 1cApp. Этот момент проконтролировать крайне важно, так как оно исходит от родительских папок.
Регистрация информационных баз в менеджере сервиса
Для управления дистанционным доступом, при регистрации информационных баз в менеджере сервиса, необходимо использовать пользователя RemoteAccess со своим паролем для каждой базы. В каждой базе, данный пользователь в каждой базе назначается отдельно во время настройки ролей и паролей пользователя в конфигураторе. Если у вас выскочила ошибка при нажатии на ярлык "Проверить подключение", то есть вероятность того, что пароль пользователя RemoteAccess не подходит к данной информационной базе.
Особенности запуска и написания команд в командной оболочке Windows PowerShell
Если вы развертывание сервис в рамках 1cFreshWin.local часто приходится запускать командную оболочку Windows PowerShell и выполнять в ней различные команды. Нужно брать во внимание, то, что написание команд зависит от ОС на сервере. Так для ОС Windows Server 2012 R2 Standard команды в Windows PowerShell должны начинаться с символов «.\». Кроме того, при выполнении команд в Windows PowerShell может возникнуть ошибка типа «Access denied». В этом случае нужно запустить Windows PowerShell с правами администратора (Run as administrator) из контекстного меню оболочки.
Установка и запуск NGINX
Для работы NGINX требуется .NET Framework 3.5 или более новый. Если на сервере 1cFreshWin.local не установлен этот компонент, то при запуске NGINX может возникнуть ошибка. NET Framework –вшитый компонент ОС. Для его включения необходимо произвести запуск менеджера сервера и выполнить команду "Добавить роли и компоненты" (Add roles and features). В открывшемся окне в разделе Features отметить компонент .NET Framework 3.5.
Далее при запуске службы nginx из командной оболочки Windows PowerShell (запущенной с правами администратора – «.\nginx_service start») служба nginx может быть установлена, но не запущена. При этом окна, оповещающие об ошибках запуска, могут не появиться, так как команда выполняется асинхронно. В такой случае необходимо вызвать диспетчер служб, выделить службу nginx в списке служб и проверить ее состояние.
Установка сертификата безопасности
Установка сертификата в веб-браузере. Установка сертификата безопасности, напрямую зависит от установленной ОС. Так, для ОС Windows Server 2012 R2 Standard в браузере Internet Explorer 11, созданный ранее сертификат открывается в виде, не допускающем его установку. Для исправления этой ошибки необходимо вручную запустить файл сертификата 1cfreshwin.local (с расширением crt и большего размера, чем второй файл сертификата с таким же именем). Далее появится, диалог для просмотра сертификата, с возможностью установки сертификата.
Использование приложений с общим внешним адресом
Если на вашем сервисе число абонентов растет постоянно, вам будет полезно масштабировать сервис с применением шлюза приложений. В случае добавления информационных баз в сервис, для всех однотипных баз будет сохраняться единый внешний адрес.
Публикация информационной базы
Если вам необходимо использовать две одинаковые базы с единого внешнего адреса, их нужно публиковать идентично на веб-сервере. То есть, необходимо создавать подпапку, такую же как и для первой базы. Обратите внимание, что у обеих информационных баз в файле публикаций default.vrd базовый путь одинаковый – «base = /a/sample».
Проверка работы информационных баз с общим внешним адресом
Помните, что при запуске менеджера сервиса через браузер, от двух разных пользователей, браузер автоматически может сохранить данные входа в Cookies. Чтобы не столкнуться с ошибками в этом моменте рекомендуем очистить Cookies в браузере.
Создание базы данных сайта с помощью psql (шаг 1). Создание баз данных происходит через клиентскую программу - psql – PostgreSQL. Надо иметь в виду, что работа с консолью psql зависит от операционной системы, установленной на сервере. Далее вы вводите пароль суперюзера, который был задан при установке PostgreSQL. После получения приглашения, можно ввести команды для создания баз данных сайта.
Настройка IIS перед запуском сайта (шаг 2). Непосредственно перед запуском сайта нужно провести настройку в менеджере IIS Default Site, обратите внимание, чтобы он не занимал порт 8000, так как на нем работает Tomcat.
Настройка форума
Форум - инструмент, который позволяет пользователям общаться друг с другом, с поставщиком сервиса и службой поддержкой.
Мастер настройки форума (шаг 1). Первое, что нужно взять во внимание это имена файлов логотипов должны быть идентичными именам этих файлов. Поменять их можно при настройке форума на этом шаге, или же переименовать вручную.
Мастер настройки форума (шаг 2). Для проверки форумов необходимо использовать локальный почтовый сервер, который был задан на виртуальную машину. Обратите внимание, что при указании почтовых настроек форума на втором шаге в поле mail.mail_server нужно указывать 1cfreshwin.local. В поле mail_password можно указывать любой пароль.
Создание нового пользователя сервера
В первую очередь добавление нового пользователя сервера будет зависеть от установленной ОС на сервере. Если вы работаете через ОС Windows, чтобы добавить нового пользователя, необходимо открыть менеджер сервера и выполнить команду меню Tools – Computer management. В открывшемся окне раскрыть ветвь Local users and groups – Users и из контекстного меню выполнить команду New User.
Первое, что нужно учитывать - службы AppGate, Apache Tomcat, которые отвечают за работу шлюза, сайты и форума запускаются не очень быстро. (ответственные за работу шлюза, сайта и форума) стартуют не слишком быстро (в среднем для запуска требуется минута). Поэтому, если у вас возникла ошибки - 502 и 504, первое, что нужно сделать - перезапустить службы AppGate, Apache Tomcat, подождать и повторить нужную операцию. Ну и, конечно, при возникновении любой ошибки, надо проверить в диспетчере служб, что другие службы, необходимые для работы сервиса (nginx, PostgreSQL, агент сервера «1С:Предприятия»), запущены и работают.