IOS - 12.4.6 Issue with latest stable

Hi,

So I have been setting up our own instances for a couple of projects, redeployed everything since the latest stable on Friday but have hit a snag.

On ipad’s when you try to load the welcome page it just cycles round and round until Safari states the page is unavailable. IOS version is 12.4.6

The deployment is on ubuntu 18.04 and I am using the stable brance, I have even tried an untouched deployment just quick deploy with letsincrypt script run.

In the nginx log I see:

2020/03/29 22:00:41 [error] 9116#9116: *39 recv() failed (104: Connection reset by peer) while proxying and reading from upstream, client: 93.174.93.114, server: 0.0.0.0:443, upstream: “127.0.0.1:4445”, bytes from/to client:120/3615, bytes from/to upstream:3615/391
2020/03/29 22:01:06 [error] 9116#9116: *41 recv() failed (104: Connection reset by peer) while proxying and reading from upstream, client: 150.143.54.64, server: 0.0.0.0:443, upstream: “127.0.0.1:4445”, bytes from/to client:580/3662, bytes from/to upstream:3662/1097
2020/03/29 22:01:06 [error] 9116#9116: *43 recv() failed (104: Connection reset by peer) while proxying and reading from upstream, client: 150.143.54.64, server: 0.0.0.0:443, upstream: “127.0.0.1:4445”, bytes from/to client:580/520, bytes from/to upstream:520/1144
2020/03/29 22:01:06 [error] 9116#9116: *45 recv() failed (104: Connection reset by peer) while proxying and reading from upstream, client: 150.143.54.64, server: 0.0.0.0:443, upstream: “127.0.0.1:4445”, bytes from/to client:580/520, bytes from/to upstream:520/1144
2020/03/29 22:01:52 [error] 9116#9116: *47 recv() failed (104: Connection reset by peer) while proxying and reading from upstream, client: 150.143.54.64, server: 0.0.0.0:443, upstream: “127.0.0.1:4445”, bytes from/to client:580/3662, bytes from/to upstream:3662/1097
2020/03/29 22:01:52 [error] 9116#9116: *49 recv() failed (104: Connection reset by peer) while proxying and reading from upstream, client: 150.143.54.64, server: 0.0.0.0:443, upstream: “127.0.0.1:4445”, bytes from/to client:580/520, bytes from/to upstream:520/1144
2020/03/29 22:01:52 [error] 9116#9116: *51 recv() failed (104: Connection reset by peer) while proxying and reading from upstream, client: 150.143.54.64, server: 0.0.0.0:443, upstream: “127.0.0.1:4445”, bytes from/to client:580/520, bytes from/to upstream:520/1144

The server is available on https://test.assemblenow.io

Hopefully, this is something stupid I’ve missed, but with most users having ipads… Its a brick wall.

Regards

Lee

Ok so a bit further forward, if I install Apache2 first, then it works ok, so its likely to be something in the NGINX config?

Ok Found the fix…

In nginx the module that redirects 443 for spliting client /turn request via ALPN.

Should be set as:

since 1.13.10

map $ssl_preread_alpn_protocols $upstream {
    ~\bh2\b     		web;
~\bh2c\b     		web;
~\bhttp/1.1\b		web;
~\bh2,http/1.1\b	web;
~\bh2c,http/1.1\b	web;
default         	turn;
}

This then tests ok with Safari

2 Likes

I have exactly the same problem with Chrome. Firefox works OK.

I made the change suggested by @Lee_Quince but I still have the same problem.

I only get the problem if i enable websockets in /etc/jitsi/meeet/{domain}-config.js

Works for me, In Ubuntu the file location is: /etc/nginx/modules-enabled/60-jitsi-meet.conf
Dont forget to service nginx restart afterwards.

Lee - I’m happy to push this as a patch, I’ve got a large amount of free time now to devote to Jitsi, though I’m not a core dev.

Can you explain the exact difference between the old commands and the new? The nginx map command doesn’t have great documentation, and I’d like to be clear on what exactly the new format is doing when I submit the patch. Thanks!

//EDIT: Never mind, been long enough since I’ve been deep in regex I didn’t recognize the quirks.

There is an open pull request (not by me, someone beat me to it) to resolve this in the source here: https://github.com/jitsi/jitsi-meet/pull/5651

Thank you so much! i have installed Jitsi about 40 times past week and had no idea how to get it working with ios! Again thank you!!

2020/04/10 21:20:40 [error] 1164#1164: *619 recv() failed (104: Connection reset by peer) while proxying and reading from upstream, client: x.x.x.x, server: 0.0.0.0:443, upstream: “127.0.0.1:4445”, bytes from/to client:442/3598, bytes from/to upstream:3598/959

Still I have this issue, can anybody help on this

Sam - have you made the changes to your nginx config as suggested in the patch?

/etc/nginx/modules-enabled/60-jitsi-meet.conf

Replace this:

    map $ssl_preread_alpn_protocols $upstream {
        "h2"            web;
        "http/1.1"      web;
        "h2,http/1.1"   web;
        default         turn;
    }

With this:

    map $ssl_preread_alpn_protocols $upstream {
        ~\bh2\b         web;
        ~\bhttp/1\.     web;
        default         turn;
    }

Restart nginx, and older iOS clients should be happy. If not, please report back, as this should have resolved the issue.

I just did a fresh install and my 60-jitsi-meet.conf file has this:

map $ssl_preread_alpn_protocols $upstream {
~\bh2\b         web;
~\bhttp/1\.     web;
default         turn;

}

It still doesn’t work with older iOS clients :frowning:

EDIT:
This is from a fresh install on a DigitalOcean droplet.
The rest of my system is:
Ubuntu 18.04 LTS
nginx/1.14.0
jitsi-videobridge2: 2.1-169-ga28eb88e-1

Let me know if any additional info would be helpful. Thank you for the assistance!

I take it all back! It’s working on the app now!
Safari still dies when I try to access the web site (it was my lazy way of checking) but I was just able to join a meeting with my old iOS device on the new server.

Thanks again!

Thanks for your advice, However still same error is popping up. Any other changes to do? .

Hi,

I’m on the latest Jitsi and still having the same issue.
jitsi-meet/stable,now 2.0.4416-1 all [installed]
jitsi-meet-prosody/stable,now 1.0.3992-1 all [installed,automatic]
jitsi-meet-turnserver/stable,now 1.0.3992-1 all [installed,automatic]
jitsi-meet-web/stable,now 1.0.3992-1 all [installed,automatic]
jitsi-meet-web-config/stable,now 1.0.3992-1 all [installed,automatic]
jitsi-videobridge2/stable,now 2.1-169-ga28eb88e-1 all [installed,automatic]
libnginx-mod-http-geoip/bionic-updates,bionic-security,now 1.14.0-0ubuntu1.7 amd64 [installed,automatic]
libnginx-mod-http-image-filter/bionic-updates,bionic-security,now 1.14.0-0ubuntu1.7 amd64 [installed,automatic]
libnginx-mod-http-xslt-filter/bionic-updates,bionic-security,now 1.14.0-0ubuntu1.7 amd64 [installed,automatic]
libnginx-mod-mail/bionic-updates,bionic-security,now 1.14.0-0ubuntu1.7 amd64 [installed,automatic]
libnginx-mod-stream/bionic-updates,bionic-security,now 1.14.0-0ubuntu1.7 amd64 [installed,automatic]
nginx/bionic-updates,bionic-security,now 1.14.0-0ubuntu1.7 all [installed]
nginx-common/bionic-updates,bionic-security,now 1.14.0-0ubuntu1.7 all [installed,automatic]
nginx-core/bionic-updates,bionic-security,now 1.14.0-0ubuntu1.7 amd64 [installed,automatic]

/etc/nginx/modules-enabled/60-jitsi-meet.conf
map $ssl_preread_alpn_protocols $upstream {
~\bh2\b web;
~\bhttp/1. web;
default turn;
}
nginx error: 2020/04/16 18:21:34 [error] 917#917: *14462 recv() failed (104: Connection reset by peer) while proxying and reading from upstream, client: {redacted_ip} , server: 0.0.0.0:443, upstream: “127.0.0.1:4445”, bytes from/to client:723/3632, bytes from/to upstream:3632/124

for good measure i’ve tried with these setting too:
map $ssl_preread_alpn_protocols $upstream {
~\bh2\b web;
~\bh2c\b web;
~\bhttp/1.1\b web;
~\bh2,http/1.1\b web;
~\bh2c,http/1.1\b web;
default turn;
}

But exactly the same results.

Any help please???

Thanks,

Istvan

This solve the opening of the page problem, however the video is still disabled, and even after tapping on enable video button couple of time it doesn’t show the video. Any suggestions or recommendations ?

Jitsi meet is running on docker

Installed https://github.com/jitsi/docker-jitsi-meet

Jitsi meet is not working in iPhone chrome browser

image