Cattr is not found on this hostname
I get the following error in the desktop app when I try to connect it to my hosted cattr. My hosted cattr server runs just fine and logs in with no problems. I just can't seem to get the desktop app to work.
Login failed
Cattr is not found on this hostname
It turns out the error was triggered because node did not trust my ssl certificate. The error handling in the Cattr app is terrible. It should not be saying "Cattr is not found on this hostname" when it is a certificate error. I was digging through the code and realized that instead of handling api errors, the error is completely dropped and ignored and a boolean true or false is returned from the function. This is really terrible. There are an infinite number of possible errors that could go wrong and it's being boiled down to a boolean true or false result. This makes it almost impossible to debug the application and makes it difficult for people to contribute to the project.
Anyways, I was able to solve my problem after digging through the code and the following prevents this incorrect error message from blocking the application.
NODE_TLS_REJECT_UNAUTHORIZED="0" cattr
Please understand that despite my harsh criticism of the error handling in the project, I do want to thank everyone involved in this project. It is an ambitious project and has a great vision.
Just hit this error due to LetsEncrypt CA expiring, and in this case the app base OS would need to be updated.
@clayrisser thanks for the env, it works with AppImage too :)
btw, If I run AppImage with --help it does show quite a lot of logs, including:
[E] [2021-10-12T10:47:32.462Z] [Update] (500) Error occured during update manifest retrival: certificate has expired
<BEGIN STACK TRACE>
Error: certificate has expired
at TLSSocket.onConnectSecure (_tls_wrap.js:1497:34)
at TLSSocket.emit (events.js:315:20)
at TLSSocket.EventEmitter.emit (domain.js:467:12)
at TLSSocket._finishInit (_tls_wrap.js:932:8)
at TLSWrap.ssl.onhandshakedone (_tls_wrap.js:706:12)
<END STACK TRACE>
It turns out the error was triggered because node did not trust my ssl certificate. The error handling in the Cattr app is terrible. It should not be saying "Cattr is not found on this hostname" when it is a certificate error. I was digging through the code and realized that instead of handling api errors, the error is completely dropped and ignored and a boolean true or false is returned from the function. This is really terrible. There are an infinite number of possible errors that could go wrong and it's being boiled down to a boolean
trueorfalseresult. This makes it almost impossible to debug the application and makes it difficult for people to contribute to the project.Anyways, I was able to solve my problem after digging through the code and the following prevents this incorrect error message from blocking the application.
NODE_TLS_REJECT_UNAUTHORIZED="0" cattr
Hey @clayrisser, it's great that you finally managed to fix that in your installation, How can I apply that fix in docker installation? (Any code snippet or information will be helpful)
Set the following environment variable ...
NODE_TLS_REJECT_UNAUTHORIZED="0"
The error handling in the Cattr app is terrible. It should not be saying "Cattr is not found on this hostname" when it is a certificate error. I was digging through the code and realized that instead of handling api errors, the error is completely dropped and ignored and a boolean true or false is returned from the function. This is really terrible. There are an infinite number of possible errors that could go wrong and it's being boiled down to a boolean true or false result. This makes it almost impossible to debug the application and makes it difficult for people to contribute to the project.
I fully support your words. We have a big changes in desktop client team and they requested for refactoring of that thing. But this will take time so yet, here we are. Release 3.0 will have similar code base, just with fixes of this SSL error and compatibility issues with 4.0 backend.
Thanks for you help, I can try to build and attach here desktop version with that flag for three platforms if you specify what version of client you need.
Hi all,
We have been testing Cattr and found also a hostname not found issue. Not sure if it is the same as above. Here are some details that hope to help troubleshoot and solve the issue.
We are testing the cattr on docker. Originally we were testing the desktop and ubuntu versions with http. The apps were working. Once we decided to test the cattr with https, we removed the container and did another one. The web app worked fine but there were some issues with the mobile apps.
The Ubuntu app would not load, even after purging and reinstalling. The windows app also would not load. Once we remove the registry of cattr in windows, it would load to the host name screen but we would get the hostname issue.
At the same time, we tested the app in Android and it was working fine.
We removed the docker and made a new container with http, and the original Windows and Ubuntu apps started working. The mobile that was associated to https site would not work, even after uninstall and install again.
Hope this helps
You can find some info about desktop app logic here: https://community.cattr.app/public/d/28-login-failed-cattr-is-not-found-on-this-hostname/15
You can find some info about desktop app logic here: https://community.cattr.app/public/d/28-login-failed-cattr-is-not-found-on-this-hostname/15
I've read this, in my cattr.manifest I get {"backend_path":null,"frontend_version":"3.4.3" by https://ct.ondev.in/api/status everything seems to be ok, but still a mistake The installation was performed on the Ubuntu docker version 18
Although everything works fine on the portable version of Cattr-2.7.0
You can find some info about desktop app logic here: https://community.cattr.app/public/d/28-login-failed-cattr-is-not-found-on-this-hostname/15
I've read this, in my cattr.manifest I get {"backend_path":null,"frontend_version":"3.4.3" by https://ct.ondev.in/api/status everything seems to be ok, but still a mistake The installation was performed on the Ubuntu docker version 18
Although everything works fine on the portable version of Cattr-2.7.0
Hi @WEBzaytsev
Have you find any solution for this. I'm facing the same issue with docker installation. It's working good with application 2.7 but not working with 3.0.
Also my cattr.manifest result as same as your's. Have you any idea where to find "backend_path" key?
Thanks.
Hello. Same here.
Clean install of cattr with default docker settings. I can launch frontend, but Windows desktop app show "Cattr is not found on this hostname".
I can see that desktop requests /status, /cattr.manifest and /api/status all of them with 200 result code
I can not find desktop-2.7.4 exe compiled for download so I've not tried with previous desktop.
Any hints?
I am having the same issue on Linux, even setting the env var NODE_TLS_REJECT_UNAUTHORIZED="0" doesn't help here. I can perfectly fine run the frontend app in my browser but the desktop app (deb package) gives me the same error.
I'm having the same problem, can't connect cattr desktop client to the server. can someone tell me where can i add this NODE_TLS_REJECT_UNAUTHORIZED="0" env variable?
Note: As per Resource Monitor> Network > TCP connection, the client is trying to connect on port 443. I'm able to telnet to the server on this port
It's 2024 and I have the same error in windows 10 desktop. How can I solve it? With "NODE_TLS_REJECT_UNAUTHORIZED="0" cattr" ??? if so, how and where can I add this? I'm a programmer, but not this kind of software :(
It's 2024 and I have the same error in windows 10 desktop. How can I solve it? With "NODE_TLS_REJECT_UNAUTHORIZED="0" cattr" ??? if so, how and where can I add this? I'm a programmer, but not this kind of software :(
I encountered the same issue with the "hostname not found" error in the Cattr desktop app, but I was able to resolve it. You can try the following solution:
- Access the frontend container(server-application_app_1) as per you give the name of container.
- Run the following command: nohup php artisan websockets:serve &
After that, check the desktop app again. The error should be resolved.
I have ran the commands from https://hub.docker.com/r/amazingcat/cattr but modified a little as i am on shared hosting with lots of docker containers
docker run -d -it --restart always -p 8020:80 --name cattr
-e FRONTEND_DOMAIN="cat.xxxxx.pk"
-e ADMIN_MAIL="[email protected]"
-e MAIL_FROM_ADDRESS="[email protected]"
-e FRONTEND_APP_URL="https://cat.xxxxx.pk"
-v $PWD/cattr-screenshots:/app/backend/storage/app/uploads/screenshots
-v $PWD/cattr-ssl:/etc/letsencrypt
-v $PWD/cattr-config:/app/backend/bootstrap/cache
amazingcat/cattr
it did launched the container (i set the env file manually for a remote db) and it seems to working fine. my desktop app is not connecting giving Cattr is not found on this hostname
I am on mac so i tried with NODE_TLS_REJECT_UNAUTHORIZED="0" open -a Cattr with no luck
Or may be i am looking it differently .. an old repo :thinking:
I have ran the commands from https://hub.docker.com/r/amazingcat/cattr but modified a little as i am on shared hosting with lots of docker containers
docker run -d -it --restart always -p 8020:80 --name cattr -e FRONTEND_DOMAIN="cat.xxxxx.pk" -e ADMIN_MAIL="[email protected]" -e MAIL_FROM_ADDRESS="[email protected]" -e FRONTEND_APP_URL="https://cat.xxxxx.pk" -v $PWD/cattr-screenshots:/app/backend/storage/app/uploads/screenshots -v $PWD/cattr-ssl:/etc/letsencrypt -v $PWD/cattr-config:/app/backend/bootstrap/cache amazingcat/cattr
it did launched the container (i set the env file manually for a remote db) and it seems to working fine. my desktop app is not connecting giving
Cattr is not found on this hostnameI am on mac so i tried with
NODE_TLS_REJECT_UNAUTHORIZED="0" open -a Cattrwith no luckOr may be i am looking it differently .. an old repo 🤔
https://github.com/orgs/cattr-app/discussions/163
I have used to install the docker and now able to connect