GuzzleHttp Exception ConnectException: cURL error 7

Nextcloud version (eg, 20.0.5): 25.0.1
Operating system and version (eg, Ubuntu 20.04): Ubuntu 22.04
Apache or nginx version (eg, Apache 2.4.25): nginx 1.22.1
PHP version (eg, 7.4): 8.1

The issue you are facing:
Error as in the following log (GuzzleHttp\Exception\ConnectException: cURL error 7: Failed to connect to 192.168.30.232 port 443 after 0 ms: Connection refused (see https://curl.haxx.se/libcurl/c/libcurl-errors.html) for https://192.168.30.232/apps/richdocumentscode/proxy.php?req=/hosting/capabilities

My setup is
Internet → Reverse Proxy:443 → nextcloud 192.168.30.232:80
So all SSL termination is done on the reverse proxy and internally it is http:80 only. It seems as if collabora is trying to reach the server on :443 which is not open on the nextcloud server (collabora server installed on same ip.

So how do i tell collabora (or whatever it is, richdocuments) to use :80 and not :443?

Is this the first time you’ve seen this error? (Y/N): N

The output of your Nextcloud log in Admin > Logging:

[richdocuments] Fehler: GuzzleHttp\Exception\ConnectException: cURL error 7: Failed to connect to 192.168.30.232 port 443 after 0 ms: Connection refused (see https://curl.haxx.se/libcurl/c/libcurl-errors.html) for https://192.168.30.232/apps/richdocumentscode/proxy.php?req=/hosting/capabilities at <<closure>>

 0. /var/www/nextcloud/3rdparty/guzzlehttp/guzzle/src/Handler/CurlFactory.php line 158
    GuzzleHttp\Handler\CurlFactory::createRejection()
 1. /var/www/nextcloud/3rdparty/guzzlehttp/guzzle/src/Handler/CurlFactory.php line 110
    GuzzleHttp\Handler\CurlFactory::finishError()
 2. /var/www/nextcloud/3rdparty/guzzlehttp/guzzle/src/Handler/CurlHandler.php line 47
    GuzzleHttp\Handler\CurlFactory::finish()
 3. /var/www/nextcloud/lib/private/Http/Client/DnsPinMiddleware.php line 113
    GuzzleHttp\Handler\CurlHandler->__invoke()
 4. /var/www/nextcloud/3rdparty/guzzlehttp/guzzle/src/PrepareBodyMiddleware.php line 35
    OC\Http\Client\DnsPinMiddleware->OC\Http\Client\{closure}("*** sensitive parameters replaced ***")
 5. /var/www/nextcloud/3rdparty/guzzlehttp/guzzle/src/Middleware.php line 31
    GuzzleHttp\PrepareBodyMiddleware->__invoke()
 6. /var/www/nextcloud/3rdparty/guzzlehttp/guzzle/src/RedirectMiddleware.php line 71
    GuzzleHttp\Middleware::GuzzleHttp\{closure}("*** sensitive parameters replaced ***")
 7. /var/www/nextcloud/3rdparty/guzzlehttp/guzzle/src/Middleware.php line 63
    GuzzleHttp\RedirectMiddleware->__invoke()
 8. /var/www/nextcloud/3rdparty/guzzlehttp/guzzle/src/HandlerStack.php line 75
    GuzzleHttp\Middleware::GuzzleHttp\{closure}("*** sensitive parameters replaced ***")
 9. /var/www/nextcloud/3rdparty/guzzlehttp/guzzle/src/Client.php line 331
    GuzzleHttp\HandlerStack->__invoke()
10. /var/www/nextcloud/3rdparty/guzzlehttp/guzzle/src/Client.php line 168
    GuzzleHttp\Client->transfer()
11. /var/www/nextcloud/3rdparty/guzzlehttp/guzzle/src/Client.php line 187
    GuzzleHttp\Client->requestAsync()
12. /var/www/nextcloud/lib/private/Http/Client/Client.php line 218
    GuzzleHttp\Client->request()
13. /var/www/nextcloud/apps/richdocuments/lib/Service/CapabilitiesService.php line 131
    OC\Http\Client\Client->get()
14. /var/www/nextcloud/apps/richdocuments/lib/Service/CapabilitiesService.php line 74
    OCA\Richdocuments\Service\CapabilitiesService->refetch()
15. /var/www/nextcloud/apps/richdocuments/lib/AppInfo/Application.php line 80
    OCA\Richdocuments\Service\CapabilitiesService->getCapabilities()
16. /var/www/nextcloud/lib/private/AppFramework/Bootstrap/FunctionInjector.php line 67
    OCA\Richdocuments\AppInfo\Application->OCA\Richdocuments\AppInfo\{closure}("*** sensitive parameters replaced ***")
17. /var/www/nextcloud/lib/private/AppFramework/Bootstrap/BootContext.php line 51
    OC\AppFramework\Bootstrap\FunctionInjector->injectFn()
18. /var/www/nextcloud/apps/richdocuments/lib/AppInfo/Application.php line 135
    OC\AppFramework\Bootstrap\BootContext->injectFn()
19. /var/www/nextcloud/lib/private/AppFramework/Bootstrap/Coordinator.php line 190
    OCA\Richdocuments\AppInfo\Application->boot()
20. /var/www/nextcloud/lib/private/legacy/OC_App.php line 208
    OC\AppFramework\Bootstrap\Coordinator->bootApp()
21. /var/www/nextcloud/lib/private/legacy/OC_App.php line 141
    OC_App::loadApp()
22. /var/www/nextcloud/lib/base.php line 1045
    OC_App::loadApps()
23. /var/www/nextcloud/index.php line 36
    OC::handleRequest()

from 192.168.30.150 by Christian at 2022-12-07T09:10:08+01:00
1 Like

i have the same error messages with almost the same server. (Ubuntu 20.04 and Nextcloud 25.0.2)

Error Message at Nextcloud 25.0.0 - Office 7.0.0 / Built-in CODE 22.5.702 document server not loading · Issue #202 · CollaboraOnline/richdocumentscode · GitHub

P.S.: OnlyOffice works…

Hello, you can look at the error code on this site.
https://curl.se/libcurl/c/libcurl-errors.html

error 7:
CURLE_COULDNT_CONNECT (7)

Failed to connect() to host or proxy.

In my case it’s an error 6. I wonder if it’s not my DDNS which would take time to respond?

Did anyone every managed to get this fixed? I have the same error:

GuzzleHttp\Exception\ConnectException: cURL error 7: Failed to connect to server_name port 443: Connection refused (see libcurl - Error Codes) for erver_name/apps/richdocumentscode_arm64/proxy.php?req=/hosting/capabilities

I am also experiencing the same error on a fresh installation Nextcloud 27.1.3. Direct installation on Ubuntu 22.04.3 LTS (GNU/Linux 5.15.0-88-generic x86_64)

Same here on 28.0.0 on Ubuntu server 22.04.3 LTS

Idem with fresh last nextcloud 27 version on ubuntu 22.04.
I imagine this is due to a DNS problem in which Nextcloud has nothing to do, but cannot find it.

Facing the same error. Should I worry about it?

This is a solution! I had the same problem. I wanted to execute the “Preview generator”. Apparently, the problem is in the connection to richdocumentscode, which is CollaboraOnline. I removed the CODE server app and now the command is executing without any problems!

Got the same issue here but not while using a reverse proxy but a port forwarding to access the NC not via standard https port from the internet.

Seems to have it fixed by adding the port to the overwrite.cli.url parameter in the config.php. So now it looks like
"overwrite.cli.url' => 'https://really.fancy.url:55555',
if 55555 is the port that is used to access it.

Hope that might help in your case too.

1 Like

Hello, thank you for your solution, my colleague and I are stuck on it.

Thank you. I didn’t realize I typed in the wrong port.