Настройка ini файлов системы
После того, как мы настроили SourceTree и скачали готовый релиз необходимо выполнить настройку конфигурационных файлов системы.
1. Настраиваем сервер приложений
Заходим в папку FabiusNet/Server, находим файлы:
appSettings.config.sample и clientConnections.config.sample,
если это первоначальная настройка, и копируем их в ту же папку с именами
appSettings.config и clientConnections.config - соответственно.
далее открываем файл clientConnections.config находим строку подключения, для Postgres она выглядит вот так:
<add key="Postgresql" name="Npgsql" dbParameterName="Database" connectionString="Host=192.168.234.1;Port=5432;User Id=postgres; Password=psw; Integrated Security=False; Persist Security Info=False;CommandTimeout=100000; MinPoolSize=1;MaxPoolSize=100; Enlist=False; Pooling=True">
и прописываем там путь к серверу БД, логин и пароль к нему, и порт, если потребуется.
Далее, если мы заводим новое предприятие, то в секции clients заводим английский алиас для него, русское название для отображения в конфигураторе, а также имя БД и имя БД для логирования, например вот так:
<clients> <add indent="PG_ARX" name="PG_Архангельск"> <types> <add type="WorkData" database="PG_ARX" extenisionString="Search Path=dbo"/> <add type="LogData" database="log_PG_ARX"/> </types> </add> ... </clients>
Можно иметь несколько алиасов и настроек для нескольких предприятий. Текущий активный алиас задается в другом файле настройки appSettings.config, и выглядит вот так:
<appSettings> <add key="LastFactoryID" value="PG_ARX" /> <add key="ClientAutoDisconnect" value="true" /> </appSettings>
Параметр "ClientAutoDisconnect" - отвечает за то, что при закрытии сервера, будет предпринята попытка корректного отключения (штатного выхода) для всех подключенных к нему клиентов.
2. Настраиваем подключения клиентов к серверу приложений.
Заходим в папку FabiusNet/Client, находим файл ServerUrls.config.sample и копируем его в ту же папку с именем ServerUrls.config
Далее открываем его и вносим в список доступных подключений, все возможные варианты расположения серверов приложений на предприятии (их может быть несколько на разных машинах) в секцию urls
<urls> <clear/> <add name="Фабиус" url="net.tcp://192.168.234.10" port="8000" endpointname="DataServiceTcpBinding" /> <add name="Фабиус резервный" url="net.tcp://192.168.234.133" port="8000" endpointname="DataServiceTcpBinding" /> </urls>
это делается для того, чтобы при старте клиента не писать руками адрес машины, на которой запущен сервер приложений, а выбрать его из списка.
3. Настраиваем WEB-сервер FabiusNETApplication, для доступа из тонкого клиента
Открываем папку \FabiusNet\FabiusWEBApplication\publish\, находим файл appsettings.json.sample и копируем его в ту же папку с именем appsettings.json
Далее открываем его и задаем следующие настройки:
Основная настройка алиас предприятия и параметры сервера БД, настраиваем по аналогии с FabiusServer в секции AppSettings
"AppSettings": { "FactoryID": "PG_TEK", "StartForDebug": "false", "DataModelImportPath": "..\\..\\Server\\datamodel", "SystemImportPath": "..\\..\\Server\\System", "ConnectionString": "Host=192.168.234.118;Port=5432;User Id=postgres; Password=softs; Integrated Security=False; Persist Security Info=False;CommandTimeout=10000;MinPoolSize=1;MaxPoolSize=100; Enlist=False; Pooling=True;Database=PG_TEK;Search Path=dbo" }
где FactoryID - алиас, а в ConnectionString мы вносим все необходимые параметры подключения к СУБД - путь к серверу, логин и пароль к нему, и порт, если потребуется.
далее в простом случае (если тонкий клиент используется только внутри локальной сети предприятия) настраиваем параметры доступа и порты для обращения из браузера:
"AllowedHosts": "*", "urls": "https://*:5001;http://*:5000"
При таких настройках WEB-сервер FabiusNET будет доступен отовсюду, без ограничений, по портам 5000 и 5001, для SSL.
Если надо, чтобы WEB-сервер был доступен из браузера на любом компьютере в локальной сети, просто по IP или имени машины, на которой он запушен, то секция urls должна выглядеть вот так:
"urls": "https://*:443;http://*:80"
Без SSL фабиус WEB-сервер не работает, поэтому надо на той машине, где он будет запущен и для пользователем, под которым он будет работать надо выполнить команду из командной строки:
dotnet dev-certs https --trust
Настройка сертификатов для доступа извне, требует более тонкой настройки, пример которой приведен в файле appsettings.json, но зависит от типа и расположения сертификатов.
Стоит также упомянуть, что WEB-cервер FabiusWEBApplication, является самостоятельным приложением и будет работать без запущенного основного сервера приложений, а также может быть запущен на любой другой машине в сети в любом количестве экземпляров.