Server: Unable To Curl https://apps.nextcloud.com/ From Admin Interface

Created on 28 Jun 2017  Â·  27Comments  Â·  Source: nextcloud/server

Steps to reproduce

  1. Navigate to your App's admin page - https://domain/index.php/settings/apps
    2.
    3.

Expected behaviour

The App store should load with the Apps that are available from the NextCloud Store

Actual behaviour

Instead only installed Apps load and the following Error message is displayed within the logging:
GuzzleHttp\Exception\ConnectException: cURL error 28: Operation timed out after 10001 milliseconds with 0 out of -1 bytes received

Server configuration

Operating system:
CentOS Linux release 7.3.1611 (Core)

Web server:
Server version: Apache/2.4.6 (CentOS)

Database:
5.5.52-MariaDB, for Linux on x86_64

PHP version:
PHP 7.0.20 (cli)

Nextcloud version: (see Nextcloud admin page)
12.0.0

Updated from an older Nextcloud/ownCloud or fresh install:
Fresh Install

Where did you install Nextcloud from:
Tar

Signing status:

No errors have been found.

List of activated apps:

Enabled:
  - activity: 2.5.2
  - bruteforcesettings: 1.0.2
  - comments: 1.2.0
  - dav: 1.3.0
  - federatedfilesharing: 1.2.0
  - federation: 1.2.0
  - files: 1.7.2
  - files_external: 1.3.0
  - files_pdfviewer: 1.1.1
  - files_sharing: 1.4.0
  - files_texteditor: 2.4.1
  - files_trashbin: 1.2.0
  - files_versions: 1.5.0
  - files_videoplayer: 1.1.0
  - firstrunwizard: 2.1
  - gallery: 17.0.0
  - logreader: 2.0.0
  - lookup_server_connector: 1.0.0
  - nextcloud_announcements: 1.1
  - notifications: 2.0.0
  - oauth2: 1.0.5
  - passman: 2.1.2
  - password_policy: 1.2.2
  - provisioning_api: 1.2.0
  - richdocuments: 1.12.33
  - serverinfo: 1.2.0
  - sharebymail: 1.2.0
  - theming: 1.3.0
  - twofactor_backupcodes: 1.1.1
  - updatenotification: 1.2.0
  - workflowengine: 1.2.0
Disabled:
  - admin_audit
  - encryption
  - survey_client
  - systemtags
  - user_external
  - user_ldap

Nextcloud configuration:

{
    "system": {
        "instanceid": "oc9esoao89mj",
        "passwordsalt": "***REMOVED SENSITIVE VALUE***",
        "secret": "***REMOVED SENSITIVE VALUE***",
        "trusted_domains": [
            "example.com"
        ],
        "appstoreenabled": true,
        "datadirectory": "\/mnt\/data-data\/nextcloud",
        "overwrite.cli.url": "https:\/\/example.com",
        "dbtype": "mysql",
        "version": "12.0.0.29",
        "dbname": "***REMOVED SENSITIVE VALUE***",
        "dbhost": "localhost",
        "dbport": "",
        "dbtableprefix": "oc_",
        "dbuser": "***REMOVED SENSITIVE VALUE***",
        "dbpassword": "***REMOVED SENSITIVE VALUE***",
        "installed": true,
        "memcache.local": "\\OC\\Memcache\\Memcached",
        "memcache.distributed": "\\OC\\Memcache\\Memcached",
        "memcached_servers": [
            [
                "localhost",
                11211
            ]
        ]
    }
}

Are you using external storage, if yes which one: local/smb/sftp/...
Google Drive

Are you using encryption: yes/no
No

Are you using an external user-backend, if yes which one: LDAP/ActiveDirectory/Webdav/...
No

Client configuration

Browser:
Google Chrome Version 59.0.3071.115 (Official Build) (64-bit)
Firefox 41

Operating system:
Windows 10

Logs

Web server error log

GuzzleHttp\Exception\ConnectException: cURL error 28: Operation timed out after 10001 milliseconds with 0 out of -1 bytes received

Most helpful comment

This should be fixed now. Apologies for the inconvenience. We'll look into mitigating this issue in the future.

All 27 comments

Confirmed, having the same issue after upgrade from 11.0.3 this morning.

Same here with a fresh nextcloud:12 Docker container.

Assuming this has to do with the newly introduced app-store timeout: https://github.com/nextcloud/server/pull/4825~~

I get a 503 error when i try to access the api. Might probably be related
https://apps.nextcloud.com/api/v1/categories.json

Looks like an issue serverside on the store website, site loads but non of the App's are being picked up, they are just sitting as spinning disks.

To that fact it looks like the NextCloud installation is getting some information back when it calls the API but nothing about any App's.

I shall wait patiently until someone from NextCloud fixes it.

Going with the server side issue:

# curl https://apps.nextcloud.com/api/v1/platform/12.0.0/apps.json
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>503 Service Unavailable</title>
</head><body>
<h1>Service Unavailable</h1>
<p>The server is temporarily unable to service your
request due to maintenance downtime or capacity
problems. Please try again later.</p>
<hr>
<address>Apache/2.4.18 (Ubuntu) Server at apps.nextcloud.com Port 81</address>
</body></html>

So having found out that: Keep calm and drink tea until server is alright again…

Sysadmin has been notified and is taking care.

This should be fixed now. Apologies for the inconvenience. We'll look into mitigating this issue in the future.

Just spun up 12.0.3 and getting this from my host

chief@nextcloud:~$ curl https://apps.nextcloud.com/api/v1/platform/12.0.0/apps.json
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>503 Service Unavailable</title>
</head><body>
<h1>Service Unavailable</h1>
<p>The server is temporarily unable to service your
request due to maintenance downtime or capacity
problems. Please try again later.</p>
<hr>
<address>Apache/2.4.18 (Ubuntu) Server at apps.nextcloud.com Port 81</address>
</body></html>

edit Looks like it's fine this morning - might be nice to put something in the UI explaining that the app can't connect to the store at this time? @LukasReschke

6938

This is still/again broken as of now, right? The JSON URLs only return 503...

Can confirm. Just set up a new Nextcloud server and having the same problem.

Same here. Just installed a new 12.0.3 on ubuntu 16.04 and I'm getting the same problems.

Same here. Just installated a new 12.0.3 on centOS 7 and got exactly this problem.

Same here. Fresh install 12.0.3 on debian 8 and had the same issue

It's working again. :-)

On three different environments it still doesn't work.

GuzzleHttp\Exception\ConnectException: cURL error 28: Operation timed out after 10001 milliseconds with 0 bytes received

One domain is hosted by all-inkl.com, two domains are self hosted using dyndns, so it is reproducable.
Please re-invetigate further. Thank you in advance.
Carsten.

{"reqId":"soJtEvM3Zp6BWcHbQFkP","level":3,"time":"2017-11-02T12:58:05+01:00","remoteAddr":"192.168.2.119","user":"cloudchef","app":"appstoreFetcher","method":"GET","url":"\/settings\/apps\/categories","message":"Exception: {\"Exception\":\"GuzzleHttp\\Exception\\ConnectException\",\"Message\":\"cURL error 28: Operation timed out after 0 milliseconds with 0 out of 0 bytes received\",\"Code\":0,\"Trace\":\"#0 \\/var\\/www\\/nextcloud\\/3rdparty\\/guzzlehttp\\/guzzle\\/src\\/RequestFsm.php(103): GuzzleHttp\\Exception\\RequestException::wrapException(Object(GuzzleHttp\\Message\\Request), Object(GuzzleHttp\\Ring\\Exception\\ConnectException))\n#1 \\/var\\/www\\/nextcloud\\/3rdparty\\/guzzlehttp\\/guzzle\\/src\\/RequestFsm.php(132): GuzzleHttp\\RequestFsm->__invoke(Object(GuzzleHttp\\Transaction))\n#2 \\/var\\/www\\/nextcloud\\/3rdparty\\/react\\/promise\\/src\\/FulfilledPromise.php(25): GuzzleHttp\\RequestFsm->GuzzleHttp\\{closure}(Array)\n#3 \\/var\\/www\\/nextcloud\\/3rdparty\\/guzzlehttp\\/ringphp\\/src\\/Future\\/CompletedFutureValue.php(55): React\\Promise\\FulfilledPromise->then(Object(Closure), NULL, NULL)\n#4 \\/var\\/www\\/nextcloud\\/3rdparty\\/guzzlehttp\\/guzzle\\/src\\/Message\\/FutureResponse.php(43): GuzzleHttp\\Ring\\Future\\CompletedFutureValue->then(Object(Closure), NULL, NULL)\n#5 \\/var\\/www\\/nextcloud\\/3rdparty\\/guzzlehttp\\/guzzle\\/src\\/RequestFsm.php(134): GuzzleHttp\\Message\\FutureResponse::proxy(Object(GuzzleHttp\\Ring\\Future\\CompletedFutureArray), Object(Closure))\n#6 \\/var\\/www\\/nextcloud\\/3rdparty\\/guzzlehttp\\/guzzle\\/src\\/Client.php(165): GuzzleHttp\\RequestFsm->__invoke(Object(GuzzleHttp\\Transaction))\n#7 \\/var\\/www\\/nextcloud\\/3rdparty\\/guzzlehttp\\/guzzle\\/src\\/Client.php(125): GuzzleHttp\\Client->send(Object(GuzzleHttp\\Message\\Request))\n#8 \\/var\\/www\\/nextcloud\\/lib\\/private\\/Http\\/Client\\/Client.php(138): GuzzleHttp\\Client->get('https:\\/\\/apps.ne...', Array)\n#9 \\/var\\/www\\/nextcloud\\/lib\\/private\\/App\\/AppStore\\/Fetcher\\/Fetcher.php(99): OC\\Http\\Client\\Client->get('https:\\/\\/apps.ne...', Array)\n#10 \\/var\\/www\\/nextcloud\\/lib\\/private\\/App\\/AppStore\\/Fetcher\\/Fetcher.php(162): OC\\App\\AppStore\\Fetcher\\Fetcher->fetch('\\"2017-05-26 04:...', '[{\\"id\\":\\"auth\\",\\"...')\n#11 \\/var\\/www\\/nextcloud\\/settings\\/Controller\\/AppSettingsController.php(139): OC\\App\\AppStore\\Fetcher\\Fetcher->get()\n#12 \\/var\\/www\\/nextcloud\\/settings\\/Controller\\/AppSettingsController.php(157): OC\\Settings\\Controller\\AppSettingsController->getAllCategories()\n#13 [internal function]: OC\\Settings\\Controller\\AppSettingsController->listCategories()\n#14 \\/var\\/www\\/nextcloud\\/lib\\/private\\/AppFramework\\/Http\\/Dispatcher.php(160): call_user_func_array(Array, Array)\n#15 \\/var\\/www\\/nextcloud\\/lib\\/private\\/AppFramework\\/Http\\/Dispatcher.php(90): OC\\AppFramework\\Http\\Dispatcher->executeController(Object(OC\\Settings\\Controller\\AppSettingsController), 'listCategories')\n#16 \\/var\\/www\\/nextcloud\\/lib\\/private\\/AppFramework\\/App.php(114): OC\\AppFramework\\Http\\Dispatcher->dispatch(Object(OC\\Settings\\Controller\\AppSettingsController), 'listCategories')\n#17 \\/var\\/www\\/nextcloud\\/lib\\/private\\/AppFramework\\/Routing\\/RouteActionHandler.php(47): OC\\AppFramework\\App::main('OC\\\\Settings\\\\Con...', 'listCategories', Object(OC\\AppFramework\\DependencyInjection\\DIContainer), Array)\n#18 [internal function]: OC\\AppFramework\\Routing\\RouteActionHandler->__invoke(Array)\n#19 \\/var\\/www\\/nextcloud\\/lib\\/private\\/Route\\/Router.php(299): call_user_func(Object(OC\\AppFramework\\Routing\\RouteActionHandler), Array)\n#20 \\/var\\/www\\/nextcloud\\/lib\\/base.php(1004): OC\\Route\\Router->match('\\/settings\\/apps\\/...')\n#21 \\/var\\/www\\/nextcloud\\/index.php(48): OC::handleRequest()\n#22 {main}\",\"File\":\"\\/var\\/www\\/nextcloud\\/3rdparty\\/guzzlehttp\\/guzzle\\/src\\/Exception\\/RequestException.php\",\"Line\":49}","userAgent":"Mozilla\/5.0 (Windows NT 10.0; Win64; x64; rv:56.0) Gecko\/20100101 Firefox\/56.0","version":"12.0.3.3"}

root@nc:/var/www/nextcloud/apps# curl https://apps.nextcloud.com/api/v1/platform/12.0.0/apps.json


503 Service Unavailable

Service Unavailable

The server is temporarily unable to service your request due to maintenance downtime or capacity problems. Please try again later.



Apache/2.4.18 (Ubuntu) Server at apps.nextcloud.com Port 81


root@nc:/var/www/nextcloud/apps#

it's working on me about 5 hours ago after checking ecblack post. looks dead again just now.

Same for me.
https://apps.nextcloud.com/api/v1/platform/12.0.0/apps.json

Service Unavailable

The server is temporarily unable to service your request due to maintenance downtime or capacity problems. Please try again later.

seems to be fixed - thank you!

apps.nextcloud.com down makes apps page on NC unusable #10499 --->

just upgraded from NC 16.0.1 RC1 to 16.0.1 (my TEST-VM Environment before going to Production)

Integrity Check OK.

(no more error for the Apps "Passman" & "rightclick")

One thing to add:

App: "Admin Notification" + "Mindmaps" + "mood" -->
This app cannot be installed because the following dependencies are not fulfilled:
Server version 14 or lower is required.

Tested a lot of Things .. NC 16 is a great improvement. Congratulations !
Also, OnlyOffice runs very well.

edit the lib/private/App/AppStore/Fetcher/Fetcher.php and change fetch method

from

protected function fetch($ETag, $content) {
    ....
    $options = [
        'timeout' => 10,
    ];
    ...
}

to

protected function fetch($ETag, $content) {
    ....
    $options = [
        'timeout' => 60,
    ];
    ...
}

This has been adjusted to 120 in 18.0.1

After updating from NC 18 to version 19.0 I noticed that this value was reset to 10. Has this some specific reason? Line 100, Fetcher.php

$ cat lib/private/App/AppStore/Fetcher/Fetcher.php | grep "'timeout'"
            'timeout' => 10,

With such a low value App updates via occ or the webinterface are not possible for my setup (as of quite slow internet connection). Therefore I manually increased the timeout to 60 again. Thanks @RockNHawk for your instructions!

Actually we only changed the timeout when installing apps:
https://github.com/nextcloud/server/blob/stable18/lib/private/Installer.php#L279
And there we still have 120sec for web and unlimited for cli requests

Actually we only changed the timeout when installing apps:
https://github.com/nextcloud/server/blob/stable18/lib/private/Installer.php#L279
And there we still have 120sec for web and unlimited for cli requests

Thanks for the quick reply. Indeed, the value did not change in the official code from version 18 to 19. I just misunderstood your previous comment

This has been adjusted to 120 in 18.0.1

and assumed the timeout-value was changed to 120 in Fetcher.php - which it was not. It is still set to 10 there (NC19: Fetcher.php#L100).


Yesterday (while at NC version 18.0.6, before upgrading to 19), I had problems updating my Nextcloud apps (see log below). After I saw this issue here on Github, I checked my Fetcher.php and manually changed the timeout to 60 which resolved the problem for me.


Click to show error message

{
  "reqId": "Xt@LsuCYOwBpRER33-VftgAAA9U",
  "level": 2,
  "time": "2020-06-09T13:16:44+00:00",
  "remoteAddr": "xx.xx.xx.xx",
  "user": "ncp",
  "app": "appstoreFetcher",
  "method": "GET",
  "url": "/ocs/v2.php/apps/updatenotification/api/v1/applist/18.0.6.0",
  "message": "Could not connect to appstore: cURL error 28: Operation timed out after 10000 milliseconds with 3497984 out of 5055472 bytes received (see http://curl.haxx.se/libcurl/c/libcurl-errors.html)",
  "userAgent": "Mozilla/5.0 (X11; Linux x86_64; rv:77.0) Gecko/20100101 Firefox/77.0",
  "version": "18.0.4.2",
  "id": "5edf8d031ea69"
}

And as I thought the value was officially set to 120 I just wondered why I didn't have this value after updating to 19.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

ThomasLeister picture ThomasLeister  Â·  3Comments

rullzer picture rullzer  Â·  3Comments

e-alfred picture e-alfred  Â·  3Comments

williambargent picture williambargent  Â·  3Comments

mama21mama picture mama21mama  Â·  3Comments