Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Make simple http and ws available without HTTPS/SSL mandatory for web export #10765

Open
NervenCid opened this issue Sep 17, 2024 · 1 comment

Comments

@NervenCid
Copy link

NervenCid commented Sep 17, 2024

Describe the project you are working on

We are working on an application to help poor farmers in Colombia that communicates data via websockets, is an open source non-profit research project

Describe the problem or limitation you are having in your project

We are trying to deploy the application in a LAN server and transfer the knowledge of Godot to students and farmers in rural areas, but the mandatory requirement of HTTPS, makes impossible to develop and research for us and makes impossible to transfer the knowlege to students and farmers due the complexity of managing SSL certificates and that we don't have access to a domain or trusted cretificates (required by Godot), and we failed to implement self signed certificates on localhost (we want to use a Raspberry Pi on a LAN in order to deploy), Godto is filing to do the handshacke with the backend in order to connect via websockets(we used self signed certificates in the backend too) besides the documentation that we found on internet we can't bypass the restriction or have success on use self signed certificates for local development

Describe the feature / enhancement and how it helps to overcome the problem or limitation

This will help us to develop a web application and prototype it more easily, we can't get a domain and we are working on a closed LAN infraestructure (so we can't use letsencrypt or use a third party), also we don't have access (or economical founds) to Azure, AWS or any third party that provide us with the SSL managment, and manage websockets in wss is quite hard and we failed besides we used self signed certificates into our backend because we are researchers and we don't have qualified personel that knows many about SSL certificates or how to manage them, and we can spread the use of Godot more easily, we are starting with elementary school students and farmers, so we cannot make complicate to them to develop test applications.

Describe how your proposal will work, with code, pseudo-code, mock-ups, and/or diagrams

Make the use of HTTPS optional for development and local networks in the project settings

If this enhancement will not be used often, can it be worked around with a few lines of script?

No, we tryed everything even in the official documentation, facebook, discord and forums

And eve we tryed with this tutorial:

Is there a reason why this should be core and not an add-on in the asset library?

No, because is inner to the web export module of Godot

@dalexeev dalexeev changed the title PLEASE, PLEASE, PLEASE!!!! Make simple http and ws available without HTTPS/SSL mandatory for web export Make simple http and ws available without HTTPS/SSL mandatory for web export Sep 17, 2024
@Calinou
Copy link
Member

Calinou commented Sep 17, 2024

If you export with threads disabled in Godot 4.3, it should already be possible to serve a Godot web export over plain HTTP. The editor's local web server (used in one-click deploy) might not offer an option for it, but you can certainly deploy a local web server yourself that achieves this.

Exporting with threads enabled will always require HTTPS due to web browsers' security restrictions (it's needed for SharedArrayBuffer to be available).

That said, keep in mind web browers are heavily encouraging the use of secure contexts nowadays, so it might not even be possible anymore a few years in the future.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants