Cannot create or edit Nextcloud office documents

What type of hardware are you using: VPS bought online
What YunoHost version are you running: 12.0.17
What app is this about: Nextcloud

Describe your issue

When creating a new document following this procedure:

  1. open files app
  2. select “+ New” button
  3. select “New document”
  4. enter “New document.odt” as file name as proposed
  5. select Create button,

the web UI is busy waiting for more than 10 seconds, then responds with this message:

  • Document loading failed
  • Failed to load Nextcloud Office - please try again later

The same happens when opening an existing document. So no Nextcloud user can create nor view or edit Nextcloud office documents at all. This had worked for years, but I cannot remember when I tried it last.

Nextcloud version: 31.0.6
Installed Nextcloud apps:

  • Nextcloud office 8.7.1,
  • Collabora Online - Built-in CODE Server 25.4.202

It would be very nice to get any help, thank you!

Share relevant logs or error messages

{“reqId”:“No9mqiuG6Xr3Yk7sY5hR”,“level”:3,“time”:“2025-06-29T17:21:08+00:00”,“remoteAddr”:“2003:f6:1730:7400:ec6e:40:457c:415”,“user”:“MYUSER”,“app”:“richdocuments”,“method”:“GET”,“url”:“/nextcloud/core/preview?fileId=425852&x=250&y=250”,“message”:“Failed to convert preview: Client error: POST https://MYDOMAIN.TLD/nextcloud/apps/richdocumentscode/proxy.php?req=/cool/convert-to/png resulted in a 400 Bad Request response:\n\n

Socket proxy error

\n

Error: No content in reply from coolwsd. Is SSL enabled in error ?

\n</bod (truncated…)\n”,“userAgent”:“Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36”,“version”:“31.0.6.2”,“exception”:{“Exception”:“GuzzleHttp\Exception\ClientException”,“Message”:“Client error: POST https://MYDOMAIN.TLD/nextcloud/apps/richdocumentscode/proxy.php?req=/cool/convert-to/png resulted in a 400 Bad Request response:\n\n

Socket proxy error

\n

Error: No content in reply from coolwsd. Is SSL enabled in error ?

\n</bod (truncated…)\n”,“Code”:400,“Trace”:[{“file”:“/var/www/nextcloud/3rdparty/guzzlehttp/guzzle/src/Middleware.php”,“line”:72,“function”:“create”,“class”:“GuzzleHttp\Exception\RequestException”,“type”:“::”,“args”:[“*** sensitive parameters replaced “]},{“file”:”/var/www/nextcloud/3rdparty/guzzlehttp/promises/src/Promise.php",“line”:209,“function”:“GuzzleHttp\{closure}”,“class”:“GuzzleHttp\Middleware”,“type”:“::”,“args”:[" sensitive parameters replaced “]},{“file”:”/var/www/nextcloud/3rdparty/guzzlehttp/promises/src/Promise.php",“line”:158,“function”:“callHandler”,“class”:“GuzzleHttp\Promise\Promise”,“type”:“::”},{“file”:“/var/www/nextcloud/3rdparty/guzzlehttp/promises/src/TaskQueue.php”,“line”:52,“function”:“GuzzleHttp\Promise\{closure}”,“class”:“GuzzleHttp\Promise\Promise”,“type”:“::”,“args”:[" sensitive parameters replaced “]},{“file”:”/var/www/nextcloud/3rdparty/guzzlehttp/promises/src/Promise.php",“line”:251,“function”:“run”,“class”:“GuzzleHttp\Promise\TaskQueue”,“type”:“->”},{“file”:“/var/www/nextcloud/3rdparty/guzzlehttp/promises/src/Promise.php”,“line”:227,“function”:“invokeWaitFn”,“class”:“GuzzleHttp\Promise\Promise”,“type”:“->”},{“file”:“/var/www/nextcloud/3rdparty/guzzlehttp/promises/src/Promise.php”,“line”:272,“function”:“waitIfPending”,“class”:“GuzzleHttp\Promise\Promise”,“type”:“->”},{“file”:“/var/www/nextcloud/3rdparty/guzzlehttp/promises/src/Promise.php”,“line”:229,“function”:“invokeWaitList”,“class”:“GuzzleHttp\Promise\Promise”,“type”:“->”},{“file”:“/var/www/nextcloud/3rdparty/guzzlehttp/promises/src/Promise.php”,“line”:69,“function”:“waitIfPending”,“class”:“GuzzleHttp\Promise\Promise”,“type”:“->”},{“file”:“/var/www/nextcloud/3rdparty/guzzlehttp/guzzle/src/Client.php”,“line”:189,“function”:“wait”,“class”:“GuzzleHttp\Promise\Promise”,“type”:“->”},{“file”:“/var/www/nextcloud/lib/private/Http/Client/Client.php”,“line”:277,“function”:“request”,“class”:“GuzzleHttp\Client”,“type”:“->”},{“file”:“/var/www/nextcloud/apps/richdocuments/lib/Service/RemoteService.php”,“line”:87,“function”:“post”,“class”:“OC\Http\Client\Client”,“type”:“->”,“args”:[" sensitive parameters replaced ***”]},{“file”:“/var/www/nextcloud/apps/richdocuments/lib/Service/RemoteService.php”,“line”:67,“function”:“convertTo”,“class”:“OCA\Richdocuments\Service\RemoteService”,“type”:“->”},{“file”:“/var/www/nextcloud/apps/richdocuments/lib/Preview/Office.php”,“line”:41,“function”:“convertFileTo”,“class”:“OCA\Richdocuments\Service\RemoteService”,“type”:“->”},{“file”:“/var/www/nextcloud/lib/private/Preview/GeneratorHelper.php”,“line”:44,“function”:“getThumbnail”,“class”:“OCA\Richdocuments\Preview\Office”,“type”:“->”},{“file”:“/var/www/nextcloud/lib/private/Preview/Generator.php”,“line”:342,“function”:“getThumbnail”,“class”:“OC\Preview\GeneratorHelper”,“type”:“->”},{“file”:“/var/www/nextcloud/lib/private/Preview/Generator.php”,“line”:313,“function”:“generateProviderPreview”,“class”:“OC\Preview\Generator”,“type”:“->”},{“file”:“/var/www/nextcloud/lib/private/Preview/Generator.php”,“line”:117,“function”:“getMaxPreview”,“class”:“OC\Preview\Generator”,“type”:“->”},{“file”:“/var/www/nextcloud/lib/private/Preview/Generator.php”,“line”:87,“function”:“generatePreviews”,“class”:“OC\Preview\Generator”,“type”:“->”},{“file”:“/var/www/nextcloud/lib/private/PreviewManager.php”,“line”:161,“function”:“getPreview”,“class”:“OC\Preview\Generator”,“type”:“->”},{“file”:“/var/www/nextcloud/core/Controller/PreviewController.php”,“line”:168,“function”:“getPreview”,“class”:“OC\PreviewManager”,“type”:“->”},{“file”:“/var/www/nextcloud/core/Controller/PreviewController.php”,“line”:127,“function”:“fetchPreview”,“class”:“OC\Core\Controller\PreviewController”,“type”:“->”},{“file”:“/var/www/nextcloud/lib/private/AppFramework/Http/Dispatcher.php”,“line”:200,“function”:“getPreviewByFileId”,“class”:“OC\Core\Controller\PreviewController”,“type”:“->”},{“file”:“/var/www/nextcloud/lib/private/AppFramework/Http/Dispatcher.php”,“line”:114,“function”:“executeController”,“class”:“OC\AppFramework\Http\Dispatcher”,“type”:“->”},{“file”:“/var/www/nextcloud/lib/private/AppFramework/App.php”,“line”:161,“function”:“dispatch”,“class”:“OC\AppFramework\Http\Dispatcher”,“type”:“->”},{“file”:“/var/www/nextcloud/lib/private/Route/Router.php”,“line”:307,“function”:“main”,“class”:“OC\AppFramework\App”,“type”:“::”},{“file”:“/var/www/nextcloud/lib/base.php”,“line”:1040,“function”:“match”,“class”:“OC\Route\Router”,“type”:“->”},{“file”:“/var/www/nextcloud/index.php”,“line”:24,“function”:“handleRequest”,“class”:“OC”,“type”:“::”}],“File”:“/var/www/nextcloud/3rdparty/guzzlehttp/guzzle/src/Exception/RequestException.php”,“Line”:111,“message”:“Failed to convert preview: Client error: POST https://MYDOMAIN.TLD/nextcloud/apps/richdocumentscode/proxy.php?req=/cool/convert-to/png resulted in a 400 Bad Request response:\n\n

Socket proxy error

\n

Error: No content in reply from coolwsd. Is SSL enabled in error ?

\n</bod (truncated…)\n”,“exception”:,“CustomMessage”:“Failed to convert preview: Client error: POST https://MYDOMAIN.TLD/nextcloud/apps/richdocumentscode/proxy.php?req=/cool/convert-to/png resulted in a 400 Bad Request response:\n\n

Socket proxy error

\n

Error: No content in reply from coolwsd. Is SSL enabled in error ?

\n</bod (truncated…)\n”},“id”:“686176095b971”}

Did you try to check and/or retry connection to collabora in nextcloud > administration > nextcloud office ?

Nextcloud office settings:

Collabora Online server is reachable.

Collabora Online Development Edition 25.04.2.2 636e10a2b1

URL used by the browser: https://MYDOMAIN.TLD/nextcloud/apps/richdocumentscode/proxy.php?req=
Nextcloud URL used by Collabora: https://MYDOMAIN.TLD/nextcloud (Determined from the browser URL)

Btw, in the log, richdocumentscode was mewntioned in an error message.

Further down in the Nextcloud settings, there is a block that I had to scroll to read:

Anscheinend gibt es ein Problem mit dieser Website

https://MYDOMAIN.TLD/nextcloud/settings/admin/richdocuments hat einen Fehler zurückgeschickt.

Fehlercode: 405 Method Not Allowed

    Vergewissern Sie sich, dass Sie die Adresse der Website richtig eingegeben haben.

I.e. make sure that you entered the website address correctly. I am not aware of having entered any address.

The url used by the browser is quite strange… Is Collabora Online App still enabled ?

1 Like

A Collabora online app doesn’t exist. I guess it has been renamed to Nextcloud office.

Installed active Nextcloud apps include:

In the admin settings, the Collabora server seems reachable as posted above.

Should I uninstall and reinstall both apps?

I meant

image
This is my setting:


Both urls are https://subdomain.domain.tld

Try deactivating - reactivating collabora app.

My url is https://MYDOMAIN.TLD/nextcloud.

I tested to switch to nextcloud.MYDOMAIN.TLD in the Yunohost Nextcloud settings, but that didn’tchange anything either, Nextcloud office then couldn’t connect ro Collabora CODE server. I switched back to MYDOMAIN.TLD/nextcloud.

I even deactivated both Nextcloud office and Collabora Online CODE server and removed them, reinstalled both thereafter, which didn’t bring any help.

Do you still have this url in the settings ? And are there any change in the logs ?

Thank you for your frequent responses! Today, I was waiting for the hot weather to go. Now it has cooled down to 31°C.

The URL is the same, the most recent error exception from the log is this:

{"reqId":"xmMPK5t9FPXJs4uplQtg","level":3,"time":"2025-06-30T19:33:49+00:00","remoteAddr":"2003:f6:1737:f800:2109:358e:7b02:3b92","user":"MYUSER","app":"richdocuments","method":"GET","url":"/nextcloud/core/preview?fileId=426205&x=32&y=32&mimeFallback=true&v=cef2ce&a=0","message":"Failed to convert preview: Client error: `POST https://MYDOMAIN.TLD/nextcloud/apps/richdocumentscode/proxy.php?req=/cool/convert-to/png` resulted in a `400 Bad Request` response:\n<html><body>\n<h1>Socket proxy error</h1>\n<p>Error: No content in reply from coolwsd. Is SSL enabled in error ?</p>\n</bod (truncated...)\n","userAgent":"Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0","version":"31.0.6.2","exception":{"Exception":"GuzzleHttp\\Exception\\ClientException","Message":"Client error: `POST https://MYDOMAIN.TLD/nextcloud/apps/richdocumentscode/proxy.php?req=/cool/convert-to/png` resulted in a `400 Bad Request` response:\n<html><body>\n<h1>Socket proxy error</h1>\n<p>Error: No content in reply from coolwsd. Is SSL enabled in error ?</p>\n</bod (truncated...)\n","Code":400,"Trace":[{"file":"/var/www/nextcloud/3rdparty/guzzlehttp/guzzle/src/Middleware.php","line":72,"function":"create","class":"GuzzleHttp\\Exception\\RequestException","type":"::","args":["*** sensitive parameters replaced ***"]},{"file":"/var/www/nextcloud/3rdparty/guzzlehttp/promises/src/Promise.php","line":209,"function":"GuzzleHttp\\{closure}","class":"GuzzleHttp\\Middleware","type":"::","args":["*** sensitive parameters replaced ***"]},{"file":"/var/www/nextcloud/3rdparty/guzzlehttp/promises/src/Promise.php","line":158,"function":"callHandler","class":"GuzzleHttp\\Promise\\Promise","type":"::"},{"file":"/var/www/nextcloud/3rdparty/guzzlehttp/promises/src/TaskQueue.php","line":52,"function":"GuzzleHttp\\Promise\\{closure}","class":"GuzzleHttp\\Promise\\Promise","type":"::","args":["*** sensitive parameters replaced ***"]},{"file":"/var/www/nextcloud/3rdparty/guzzlehttp/promises/src/Promise.php","line":251,"function":"run","class":"GuzzleHttp\\Promise\\TaskQueue","type":"->"},{"file":"/var/www/nextcloud/3rdparty/guzzlehttp/promises/src/Promise.php","line":227,"function":"invokeWaitFn","class":"GuzzleHttp\\Promise\\Promise","type":"->"},{"file":"/var/www/nextcloud/3rdparty/guzzlehttp/promises/src/Promise.php","line":272,"function":"waitIfPending","class":"GuzzleHttp\\Promise\\Promise","type":"->"},{"file":"/var/www/nextcloud/3rdparty/guzzlehttp/promises/src/Promise.php","line":229,"function":"invokeWaitList","class":"GuzzleHttp\\Promise\\Promise","type":"->"},{"file":"/var/www/nextcloud/3rdparty/guzzlehttp/promises/src/Promise.php","line":69,"function":"waitIfPending","class":"GuzzleHttp\\Promise\\Promise","type":"->"},{"file":"/var/www/nextcloud/3rdparty/guzzlehttp/guzzle/src/Client.php","line":189,"function":"wait","class":"GuzzleHttp\\Promise\\Promise","type":"->"},{"file":"/var/www/nextcloud/lib/private/Http/Client/Client.php","line":277,"function":"request","class":"GuzzleHttp\\Client","type":"->"},{"file":"/var/www/nextcloud/apps/richdocuments/lib/Service/RemoteService.php","line":87,"function":"post","class":"OC\\Http\\Client\\Client","type":"->","args":["*** sensitive parameters replaced ***"]},{"file":"/var/www/nextcloud/apps/richdocuments/lib/Service/RemoteService.php","line":67,"function":"convertTo","class":"OCA\\Richdocuments\\Service\\RemoteService","type":"->"},{"file":"/var/www/nextcloud/apps/richdocuments/lib/Preview/Office.php","line":41,"function":"convertFileTo","class":"OCA\\Richdocuments\\Service\\RemoteService","type":"->"},{"file":"/var/www/nextcloud/lib/private/Preview/GeneratorHelper.php","line":44,"function":"getThumbnail","class":"OCA\\Richdocuments\\Preview\\Office","type":"->"},{"file":"/var/www/nextcloud/lib/private/Preview/Generator.php","line":342,"function":"getThumbnail","class":"OC\\Preview\\GeneratorHelper","type":"->"},{"file":"/var/www/nextcloud/lib/private/Preview/Generator.php","line":313,"function":"generateProviderPreview","class":"OC\\Preview\\Generator","type":"->"},{"file":"/var/www/nextcloud/lib/private/Preview/Generator.php","line":117,"function":"getMaxPreview","class":"OC\\Preview\\Generator","type":"->"},{"file":"/var/www/nextcloud/lib/private/Preview/Generator.php","line":87,"function":"generatePreviews","class":"OC\\Preview\\Generator","type":"->"},{"file":"/var/www/nextcloud/lib/private/PreviewManager.php","line":161,"function":"getPreview","class":"OC\\Preview\\Generator","type":"->"},{"file":"/var/www/nextcloud/core/Controller/PreviewController.php","line":168,"function":"getPreview","class":"OC\\PreviewManager","type":"->"},{"file":"/var/www/nextcloud/core/Controller/PreviewController.php","line":127,"function":"fetchPreview","class":"OC\\Core\\Controller\\PreviewController","type":"->"},{"file":"/var/www/nextcloud/lib/private/AppFramework/Http/Dispatcher.php","line":200,"function":"getPreviewByFileId","class":"OC\\Core\\Controller\\PreviewController","type":"->"},{"file":"/var/www/nextcloud/lib/private/AppFramework/Http/Dispatcher.php","line":114,"function":"executeController","class":"OC\\AppFramework\\Http\\Dispatcher","type":"->"},{"file":"/var/www/nextcloud/lib/private/AppFramework/App.php","line":161,"function":"dispatch","class":"OC\\AppFramework\\Http\\Dispatcher","type":"->"},{"file":"/var/www/nextcloud/lib/private/Route/Router.php","line":307,"function":"main","class":"OC\\AppFramework\\App","type":"::"},{"file":"/var/www/nextcloud/lib/base.php","line":1040,"function":"match","class":"OC\\Route\\Router","type":"->"},{"file":"/var/www/nextcloud/index.php","line":24,"function":"handleRequest","class":"OC","type":"::"}],"File":"/var/www/nextcloud/3rdparty/guzzlehttp/guzzle/src/Exception/RequestException.php","Line":111,"message":"Failed to convert preview: Client error: `POST https://MYDOMAIN.TLD/nextcloud/apps/richdocumentscode/proxy.php?req=/cool/convert-to/png` resulted in a `400 Bad Request` response:\n<html><body>\n<h1>Socket proxy error</h1>\n<p>Error: No content in reply from coolwsd. Is SSL enabled in error ?</p>\n</bod (truncated...)\n","exception":[],"CustomMessage":"Failed to convert preview: Client error: `POST https://MYDOMAIN.TLD/nextcloud/apps/richdocumentscode/proxy.php?req=/cool/convert-to/png` resulted in a `400 Bad Request` response:\n<html><body>\n<h1>Socket proxy error</h1>\n<p>Error: No content in reply from coolwsd. Is SSL enabled in error ?</p>\n</bod (truncated...)\n"},"id":"6862e6a617360"}

I’m stuck on this problem…
Just for information, I installed Nextcloud + CODE. and there was a certificate issue preventing the Nextcloud-CODE connection. In frustration, I tried selecting “use your own server”: the certificate problem disappeared instantly and the “use the built-in CODE” box reactivated by itself. Like grey magic…
Don’t think it will help you, but just in case, I’m sharing this experience…

Since the connection to collabora server seems in order, I haven’t tried something like that yet. When I switch to “use your own server”, the setting is immediately changed back to the builtin Collabora CODE server.

I am stuck either. I will ask in the Nextcloud forum, or even the Collabora forum. Maybe someone there can retrive some information from the error log entry.

Thank you again very much for your help!

I’m trying another lead to explore: could it be related to WOPI requests? Are there any errors in Nextcloud’s logging tab that might refer to that?

Why did’nt you use a server collabora_ynh ? it seems working better…

When trying to install Collabora as Yunohost server app, it says: this cannot be installed, without further information, see attached screenshot from mobile. My server platform is amd64.

No log errors concerning WOPI requests.

I have this allow list for WOPI reuests after a warning about WOPI requests: 127.0.0.1,::1, taken from another post which I don’t remember.

I end up wondering if the built-in server is running: what does ps aux | grep Collabora_Online.AppImage return ?
If it returns nothing, try again deactivating-removing-reinstalling Collabora Online CODE server.

ps aux | grep Collabora_Online.AppImage
nextclo+  104625  0.0  0.0   2916   700 ?        S    Jun09   0:00
/var/www/nextcloud/apps/richdocumentscode/collabora/Collabora_Onlin
e.AppImage --appimage-extract-and-run --o:remote_font_config.url=ht
tps://MYDOMAIN.TLD/nextcloud/apps/richdocuments/settings/fonts.json --o
:net.lok_allow.host[14]=MYDOMAIN.TLD --pidfile=/tmp/coolwsd.pid
admin     948395  0.0  0.0   6824  2256 pts/0    S+   06:32   0:00
grep Collabora_Online.AppImage

It seemed strange to me that a process has been running since June 9, even though you disabled, uninstalled, and reinstalled CODE a few days ago. So I tried a few things and managed to reproduce your issue and solved it this way :

  1. Check if Collabora_Online.AppImage is executable with ls -la /var/www/nextcloud/apps/richdocumentscode/collabora. It should return something as
    -rwxr--r-- 1 nextcloud nextcloud 281208000 2 juil. 11:12 Collabora_Online.AppImage.

  2. Then stop the process started on June 9 pkill -f Collabora_Online.AppImage.

  3. cd /var/www/nextcloud/apps/richdocumentscode/collabora

  4. Start CODE server ./Collabora_Online.AppImage. It shouldn’t start if the port is already in use (In my case Failed to listen on Server port(s) (9983-9983). Exiting)

  5. Check who is using this port sudo lsof -i :9983 (In my case it was coolwsd 21420 nextcloud 18u IPv6 216076 0t0 TCP *:9983 (LISTEN) = causes the issue imho

  6. Once sure that this PID is started by Nextcloud and coolwsd, kill this PID: sudo kill -9 21420

  7. Restart ./Collabora_Online.AppImage &