Simply put, lohost is a way to serve a website to the internet from any local computer where you install the lohost website client. You keep all the files on your local computer and pick the subdomain where the website lives (https://{yourApp}.lohost.io)
Looks cool! What in the way of security have you implemented? Curious about what makes it distributed exactly? Isn't the service itself centralized in order to create the subdomain?
@puppycodes Thanks for asking!
There is really only the most basic of security implemented to be honest. It checks for things like ../ to try and stop people pulling back out of the URL into the file system. DEFINITELY something that I could make better.
It does rely on a central API to route the request but I see that as more of VPN/secondary DNS. It is decentralized as you can break up the website over as many computers as you like through specifying routing configs. Combining that over multiple computers for secondary backups would then mean there isn't a central computer that is the source of truth for the hosted files.
But I agree, there is the centralized routing portion to the API. I was just trying to describe that aspect to it :) I would be more than happy for anyone to disagree with that
@puppycodes I totally agree with you! This project was really an itch I was trying to scratch in trying to do something in that direction.
I really feel stuff like this needs to be open source. If people get inspired and make something better I'd be more than happy :)
@indev I can definitely see why you would say that but I would say it horses for courses. ngrok uses tunnels to connect to your computer, this uses websockets to load and serve the requested documents.
The reason for this is that I wanted this to be a distributed solution. You can shard up the different routes across as many computers as you like and the front end will route and patchwork it together at the front end.
Along with that you can run the client over any number of computers and they will act as backups for eachother. So, if you turn off one computer, one of the others will pick up the slack.
I'm not super familar with ngrok, but if it does all that then I guess, beyond the technology, there isn't a massive amount of difference :)
I really wanted to learn more about the distributed and decentralized web hosting environment. I'm working on my client's website of https://karencannon.com/ and strongly believe that it would work more efficiently with the distributed environment.
lawnmower
lawnmower
SurfChat
lawnmower