Ошибка «no secure protocol found» при использовании Go с GitLab может возникать по разным причинам, среди которых:
- Проблемы с доверием сертификату. 2 Даже если публичный сертификат добавлен в доверенное хранилище Linux, Go может потребоваться дополнительная конфигурация. 2
- Использование собственного стека HTTP Go. 2 В отличие от Git, Go использует свой стек HTTP и не всегда может полностью использовать доверенные сертификаты системы. 2
- Настройка обратного прокси. 2 Настройка обратного прокси может иметь нюансы, которые влияют на то, как инструменты Go воспринимают безопасность соединения. 2
- Утрата суффикса .git. 3 Команда go get может усекать суффикс .git, из-за чего не находит репозиторий в GitLab, так как GitLab требует наличия этого суффикса. 3
Чтобы решить проблему, рекомендуется проверить, правильно ли установлен сертификат, настроить обработку сертификатов Go, проверить конфигурацию порта и сертификатов при настройке обратного прокси. 2 Если проблемы сохраняются, можно рассмотреть использование прямой настройки HTTPS от GitLab, чтобы обойти возможные сложности с обратным прокси. 2