Closed drudgede closed 1 week ago
Hi Mark or anyone!
Do you have any news on this issue? I have the same problem here.
On Nextcloud 21.0.7 and now after an update also on Nextcloud 22.2.3.
I use a webspace at the webhoster Ionos (1and1).
Changes in OnlyOffice do not find the way to the files. If you do a change it looks as if OnlyOffice saves the edits because when you reopen the file in OnlyOffice the changes are still there. But in the background no file got updated. If you download a file, changes are not in there.
The log in Settings shows the errors about every 5 minutes (cron.php) for each not-saved file and you can manually trigger those errors in ssh shell by running: php occ documentserver:flush
Does anyone have a solution or at least a hint where to look at? Thanks and best, APi
Further analysis resulted in:
The component x2t
actually works fine. When calling that manually on the server or even from a test.php script it does what it should do: Convert example given a Editor.bin
file to a saved.xlsx
.
However it fails when called by or inside Nextcloud.
help. It would be so great to have OnlyOffice running on the Nextcloud...
Hello @api2001, unfortunately I was not able to figure out what caused the problem. Due to the massive amount of errors in the logs and, changes inside the documents which were not stored after closing them and the lack of support/help online, I decided to drop OnlyOffice and switched to Collabora. Collabora is working way more smoothly and reliable on my setup, it's basically a set-up-and-forget environment. And luckily, the layout and styles inside the documents were not scrambled but were directly compatible, so I had not to change any document afterwards. If it's an option for you, I recommend to switch from OnlyOffice to Collabora.
Hi @drudgede, okay thanks for your honest opinion. I tried Collabora now with the CODE server. However it also does not work or has other faults: When opening a docx it says "Failed to load Collabora Online" and logs mention some "cURL error 28: Operation timed out after 45000 milliseconds with 0 bytes received". Error is known in community but none of the few solutions helped. Is it maybe that on these shared webhosting webspaces such apps simply are not wanted and that you really need an own server to configure? Best, api
Hi @api2001, I'm not pretty sure about this error. I actually have an own server with the Collabora CODE docker container running. Additionally, there is an Nginx-Reverse Proxy running according to this and this documentation.
If it's installed, you should make sure the following settings:
443
),docker run -t -d -p 127.0.0.1:9980:9980 -e "domain=cloud\\.mydomain\\.tld|mydockerserver\\.mydomain\\.tld" --name collabora -e "username=collaborauser" -e "password=mypassword" --restart always -e "extra_params=--o:welcome.enable=false" collabora/code
Here, 9980 is the port where Collabora is listening and its also the port where the reverse proxy is redirecting the traffic to. To be honest, I'm not sure if the domain of the docker server is required in the domain parameter, too, since it's behind an Nginx reverse proxy, but this configuration works for me. Please make sure that you double-escape the dots in the domain parameter and separate the domains with a |
symbol. The username and password can be arbitrary and is only relevant if you want to check which documents are opened.
My Nginx reverse proxy file (/etc/nginx/sited-enabled/collabora
) looks like this:
server {
listen 443 ssl;
server_name mydockerserver.mydomain.tld;
ssl_certificate /etc/letsencrypt/live/mydockerserver.mydomain.tld/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/mydockerserver.mydomain.tld/privkey.pem;
# static files
location ^~ /browser {
proxy_pass https://localhost:9980;
proxy_set_header Host $http_host;
}
# WOPI discovery URL
location ^~ /hosting/discovery {
proxy_pass https://localhost:9980;
proxy_set_header Host $http_host;
}
# Capabilities
location ^~ /hosting/capabilities {
proxy_pass https://localhost:9980;
proxy_set_header Host $http_host;
}
# main websocket
location ~ ^/cool/(.*)/ws$ {
proxy_pass https://localhost:9980;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
proxy_set_header Host $http_host;
proxy_read_timeout 36000s;
}
# download, presentation and image upload
location ~ ^/(c|l)ool {
proxy_pass https://localhost:9980;
proxy_set_header Host $http_host;
}
# Admin Console websocket
location ^~ /cool/adminws {
proxy_pass https://localhost:9980;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
proxy_set_header Host $http_host;
proxy_read_timeout 36000s;
}
}
So the traffic flow is like this:
cloud.mydomain.tld <-- HTTPS --> mydockerserver.mydomain.tld:443 <-- Reverse Proxy to Docker --> mydockerserver.mydomain.tld:9980
If your Docker container is up and running and you have redirected the traffic to the default SSL port 443, you should check if you can navigate to:
https://mydockerserver.mydomain.tld/browser/dist/admin/admin.html
and if you can login with the username and password you specified when you started your Docker container. If everything works fine until here, your CODE-side setup is ready to go.
If you do not have a valid SSL certificate, you have disable the certificate checking in the Nextcloud settings.
That's the setup that works for me. Hope this might help you, too.
We started seeing this in a test deployment, moving from OnlyOffice 7.1 to 7.4. It seems to be triggered by the (optional) setting to have OnlyOffice generate file previews, x2t appears to have a bug when converting to jpeg (this is quite easily triggered by calling x2t directly with a docx input and a jpeg output).
A temporary workaround might be to disable that checkbox. I'll probably be filing a bug report once I can track down a few other issues in the test environment.
Full trace, for posterity:
TypeError: Cannot read property 'length' of undefined
at Object.a.AscCommon.HL.decode.a.AscCommon.HL.decode (<anonymous>:12625:172)
at e (<anonymous>:12540:526)
at k.On (<anonymous>:12560:402)
at Object.On (<anonymous>:12565:207)
at h.e.v3c (<anonymous>:10605:404)
at h.v3c (<anonymous>:10939:202)
at <anonymous>:10551:412
at hb (<anonymous>:10014:313)
at Object.a.AscCommon.QDg (<anonymous>:10205:405)
at h.e.Qka (<anonymous>:10551:375)
Uncaught TypeError: Cannot read property 'length' of undefined
#
# Fatal error in v8::ToLocalChecked
# Empty MaybeLocal.
#
EDIT: After seeing the same crash showing up in the browser, all of this got traced all of this to the fonts / font handling. Moving the old AllFonts file in place allowed the editor to start up, but x2t etc. will need to be recompiled with an appropriate fonts fix before they will function.
EDIT2: :duck: It turns out this is the (extremely unhelpful and nonsensical) error / crash that results from not regenerating the fonts with server/tools/allfontsgen
after an update or fresh compilation from source. While the installation instructions mention this step, it's not clear that this also needs to be run after upgrades, and that may be the source of some of the confusion. I was also able to confirm that this is what was blocking OnlyOffice from synchronizing changes back to NextCloud.
This issue has been marked 'stale' due to lack of recent activity. If there is no further activity, the issue will be closed in another 60 days. Thank you for your contribution!
Retaking repo management include inheritance of old, not treated, and probablty obsolete issues, this is why it was decided to mark issues as stale.
This issue has been closed due to inactivity. If you feel this is in error, please reopen the issue or file a new issue with the relevant details.
Hello everyone,
I noticed in my Nextcloud log that all of a sudden, every five minutes (probably due to a cronjob) an error is generated in my Nextcloud instance and written to the logs. I am not sure what exactly causes the problem.
The stack trace is always the same and looks like the following:
I was not yet able to find out what exactly caused this error and why this happed from one day to another. Here are the parameters of my instance:
Is there any way I can find out what happened and how I can fix the problem?
Thanks in advance! Mark