Возможные проблемы после установки приложения
Внимание
При возникновении какой-либо проблемы/ошибки первым делом необходимо проверить log файлы приложения, либо журнал событий windows. Log файл находится по пути: C:\inetpub\wwwroot\…\Publish\logs
Если каталога logs нет, создать вручную (соблюдая регистр) и дать полные права пользователю IIS_IUSRS.
Ошибка при создании postgres-базы кэша
«Ошибка при создании postgres-базы кэша users_core»
Это означает, что кэш не настроен или настроен неправильно. Для устранения проблемы необходимо проверить файл конфигурации и убедиться, что все параметры введены верно. Помните, что в качестве основного файла конфигурации следует использовать appsettings.Production.json, а не appsettings.json.
Крутится логотип
Если после установки не появляется окно авторизации, а крутится логотип, то возможны следующие причины:
Отсутствует доступ к определённым папкам в случае использования кэша типа «Sqlite».
Некорректно настроен кэш для «PostgreSQL».
Версия браузера устарела.
Версия браузера устарела
Если в консоли браузера ошибка "Uncaught SyntaxError: Unexpected token {"
- значит версия браузера устарела. Необходимо обновить браузер до самой свежей версии (IE не поддерживается!).
При использовании кэша типа Sqlite
Если используется тип кэша Sqlite, первое, что необходимо сделать – это проверить наличие каталога Data, по пути: C:\inetpub\wwwroot\…\Publish\wwwroot\temp\Data
Как пример возможной ошибки в этом случае:
attempt to write a readonly databace
attempt to write a readonly databace
at System.Data. SQLite SQLite3 Reset(SOLiteStatenent stmt)
at System.Data. SQLite SQLite3 Reset(SOLiteStatenent stmt)
at System.Date. SQLite SQLiteDataReader.NextResult()
at System.Data SQLite SQLiteDataReader..ctor(SQLiteConmand cmd, ComandBehavior behave)
at System.Data SQLite SQLCommand ExecuteRaeder(CommandBehavior behavior)
at System.Data SQLite SQLCommand ExecuteNonQuery(CommandBehavior behavior)
at System.Data SQLite SQLCommand ExecuteNonQuery()
at Dapper.SqlMapper.ExecuteCommand(IDbConnection cnn, CommandDefinition command, Action 2 paranReader) in C:_projects_dapper_SqlMapper.cs:line 2797
at Dapper.SqlMapper.ExecuteImpl(IDbConnection cnn, CommandDefinition command) in C:_projects_dapper_SqlMapper.cs:line 568
at Dapper.SqlMapper.Execute(IDbConnection cnn, String sql, Object param, IDbTransaction transaction, Nullable 1 commandTimeout, Nullable 1 commandType) in C:_projects_dapper_SqlMapper.cs:line 441
at web_core.UserID.b__115_0()
at web_core.StopwatchExtwnsion.GetElapserTime(Action action)
at web_core.UserID.Save()
at web_core.UserID.SetSetConnectionsSettings(ConnectionSettings connectionSettings)
at web_core.UserID..ctor(String login, String password, Sting dbName, String dbServer, String realserverAddress< DataSourceTypes dataSourceType, AuthorizationType authorizationMask, AuthorizationType authorizationType, HttpContext context, String clientId)
at web_core.LoginManager.Login(httpContext context, String clientID, String name, String databace, String server, String realServerAddress, DataSourceTypes dbType< Boolean checkVersion. Boolean chechReconnect, AuthorizationType authorizationMask, AuthorizationType authorizationType, String authSvcLogin)
at web_core.LoginManager.Loib(HttpContext context, String clintId, String name, String pass, String raelServerAddress, Boolean checkReconnect, AuthorizationType authorizationType)
at web_core.LoginManager.Login(HttpContext context, String clientId, String name, String pass, String realServerAddress)
at web_core.Controllers.LoginController.FormAuth(String login, String password, String rsa)
Если каталога temp нет, то создать, и соответственно внутри него создать каталог Data.
Далее необходимо в свойствах папки в разделе «Безопасность» раздать полные права всем (как минимум пользователю IIS_IUSRS).
Ошибка HTTP 500.19
Решение: необходимо установить .NET Core windows server hosting
Ошибка HTTP 500.31 v.23.2 и выше
Текст ошибки:
HTTP Error 500.31 - ANCM Failed to Find Native Dependencies
Common solutions to this issue:
The specified version of Microsoft.NetCore.App or Microsoft.AspNetCore.App was not found.
Troubleshooting steps:
Check the system event log for error messages
Enable logging the application process' stdout messages
Attach a debugger to the application process and inspect
For more information visit:
https://go.microsoft.com/fwlink/?LinkID=2028526
Решение:
В Установленных программах Windows посмотреть наличие Microsoft .NET 6.0.ХХ Windows Server Hosting. В случае отсутствия установить. См. п. Установка Microsoft .NET Core Windows Server Hosting
Ошибка HTTP 503 или HTTP Error 500.31
1. Убедитесь, что в IIS работает пул.
Если после установки .netcore
останавливаются пулы или ошибка 500.31 См. Журнал ошибок Windows.
2. Ошибка в журнале событий приложений.
«Не удалось загрузить модуль библиотеки DLL C:\ProgramFiles\IIS\Asp.Net Core Module\V2\aspnetcorev2.dll.
Данные представляют собой код ошибки.»
Обозначает, что модули .netcore не подтянулись.
Решение:
- Удалите установленный
.netcore
из программ. - Посмотрите в установленных программах, каких версий Visual Studio не хватает (в диапазоне версий 2005-2017) и установите те версии, которых нет.
- После установки студий заново переустановите netcore.
Ошибка HTTP 500.30
1. Ошибка в заполнении конфигурационных файлов.
Обратите внимание на фигурные скобки, запятые, так же на название сервера в конфигурационном файле. Проверьте корректность, если наименование сервера содержит «... \\ ...»
.
«\»
Является спецсимволом и необходимо экранирование. Наименование сервера должно выглядеть так «... \\ ...»
.
2. Отсутствие прав на каталог Data (либо отсутствие каталога).
Проверьте наличие каталога Data, по пути:
C:\inetpub\wwwroot\…\Publish\temp\Data
Как пример возможной ошибки в этом случае:
attempt to write a readonly databace
attempt to write a readonly databace
at System.Data. SQLite SQLite3 Reset(SOLiteStatenent stmt)
at System.Data. SQLite SQLite3 Reset(SOLiteStatenent stmt)
at System.Date. SQLite SQLiteDataReader.NextResult()
at System.Data SQLite SQLiteDataReader..ctor(SQLiteConmand cmd, ComandBehavior behave)
at System.Data SQLite SQLCommand ExecuteRaeder(CommandBehavior behavior)
at System.Data SQLite SQLCommand ExecuteNonQuery(CommandBehavior behavior)
at System.Data SQLite SQLCommand ExecuteNonQuery()
at Dapper.SqlMapper.ExecuteCommand(IDbConnection cnn, CommandDefinition command, Action 2 paranReader) in C:_projects_dapper_SqlMapper.cs:line 2797
at Dapper.SqlMapper.ExecuteImpl(IDbConnection cnn, CommandDefinition command) in C:_projects_dapper_SqlMapper.cs:line 568
at Dapper.SqlMapper.Execute(IDbConnection cnn, String sql, Object param, IDbTransaction transaction, Nullable 1 commandTimeout, Nullable 1 commandType) in C:_projects_dapper_SqlMapper.cs:line 441
at web_core.UserID.b__115_0()
at web_core.StopwatchExtwnsion.GetElapserTime(Action action)
at web_core.UserID.Save()
at web_core.UserID.SetSetConnectionsSettings(ConnectionSettings connectionSettings)
at web_core.UserID..ctor(String login, String password, Sting dbName, String dbServer, String realserverAddress< DataSourceTypes dataSourceType, AuthorizationType authorizationMask, AuthorizationType authorizationType, HttpContext context, String clientId)
at web_core.LoginManager.Login(httpContext context, String clientID, String name, String databace, String server, String realServerAddress, DataSourceTypes dbType< Boolean checkVersion. Boolean chechReconnect, AuthorizationType authorizationMask, AuthorizationType authorizationType, String authSvcLogin)
at web_core.LoginManager.Loib(HttpContext context, String clintId, String name, String pass, String raelServerAddress, Boolean checkReconnect, AuthorizationType authorizationType)
at web_core.LoginManager.Login(HttpContext context, String clientId, String name, String pass, String realServerAddress)
at web_core.Controllers.LoginController.FormAuth(String login, String password, String rsa)
Если каталога temp нет, то создать, и соответственно внутри него создать каталог Data.
Далее необходимо в свойствах папки в разделе «Безопасность» раздать полные права всем (как минимум пользователю IIS_IUSRS).
A connection was successfully established with the server, but then an error occurred during the pre-login handshake. (provider: TCP Provider, error: 35 - An internal exception was caught
При входе в комплекс ошибка данного типа:
A connection was successfully established with the server, but then an error occurred during the pre-login handshake. (provider: TCP Provider, error: 35 - An internal exception was caught)
@ Msg 0, Level 20, State 0, Line 0.
Проблема возникает при соединении NEXT(Linux) к БД MSSQL 2008-2012. Для решения проблемы обратиться к сопровождению.
Ошибка в консоли Error: Failed to start the transport 'WebSockets': Error: There was an error with the transport
Во избежание ошибок вида:
Error: Failed to start the transport 'WebSockets': Error: There was an error with the transport.
На стороне реверс-прокси для SignalR должны быть включены следующие параметры:
WebSockets
;ServerSentEvents
;LongPolling
.
Ниже приведены минимальные обязательные параметры для Nginx:
# Configuration for WebSockets
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
proxy_cache off;
# WebSockets were implemented after http/1.0
proxy_http_version 1.1;
# Configuration for ServerSentEvents
proxy_buffering off;
# Configuration for LongPolling or if your KeepAliveInterval is longer than 60seconds
proxy_read_timeout 100s;
Останавливается пул. Зависает на входе
Если программный комплекс зависает на этапе входа, а загрузка продолжается бесконечно, что приводит к остановке пула, то следует обратиться к журналу событий Windows и найти соответствующий лог.
Keysystems.Core.Chips.PostgreSQL.PostgreSQLException2 (0x80004005): Подключение не установлено, т.к. конечный компьютер отверг запрос на подключение.
Если в логе есть подобное сообщение - это значит NEXT не может подключиться к PostgreSQL. Нужно искать проблему там.
Ошибка в консоли Failed to load resource: the server responded with a status of 404 ()
Если NEXT опубликован в виртуальном каталоге, а не в корне, то, необходимо внести изменения в файл конфигурации, добавив секцию:
"ServiceSettings": {
"PathBase": "/webnext2025"
},
Где webnext2025 это имя рабочего каталога c:\inetpub\wwwroot\webnext2025\Publish\