5 ms·
Author here. I made this tool with the intention of making it easier to develop websites and webservices as well as easier to share projects you're working on w
by inconshreveable 13y ago
Author here. I made this tool with the intention of making it easier to develop websites and webservices as well as easier to share projects you're working on with friends or at hackathons. Happy to answer any questions.
- peterwwillis 13y agoCan you please create a better description of what this is and how we use it? I've read all the pages and it's still murky. Is this a reverse proxy from your server to our local machines? Is it essentially a hosted version of "ssh -R HostedServerIP:HostedServerPort:127.0.0.1:80 ngrok.com" ? If so, the very first thing on the page should say: "Inspect the traffic to your web server with our free service", and then provide a little more detail like "We provide the public website. You just run our tool to connect your development site to us and watch the traffic flow in."
- inconshreveable 13y agoThat's absolutely correct. There are a couple of other things about it that make it much more useful than that ssh command: - You don't need to have access to a private server to use it. - I've taken care of setting up SSL for you. So you can run your local server with just http but still have the entire public connection portion be encrypted. - ngrok captures all of the http traffic over the tunnel, analyzes it and displays a local web interface for you to inspect the traffic. - ngrok allows you to pick any request that happened over the tunnel and replay it to your local server. This is immensely useful for building webhook consumers. - ngrok automatically reconnects if your internet connection is intermittent. - It's written in Go so I can distribute it as a binary for all major platforms with zero dependenices. I'll work on improving the copy. Thanks for the feedback!
- finnh 13y agoIt also took me awhile to figure out what ngrok does. Once I did, I can see the usefulness for sure. One path would be a list like you provide above, a sort of "your situation / your solution" approach, something like: You ... are developing a website/service your local machine You ... want to allow friends to test from outside your LAN BUT: You ... don't want to open a firewall hole to your DEV machine You ... want secure connections, but don't want to setup a valid cert You ... don't want to bother with your own reverse proxy AND You ... do want an inspectable, replayable copy of all traffic That's where we come in! obviously my text is clunky, but that sort of explanation would help me understand what "hassle" you are helping me avoid.
- zhemao 13y agoWere you aware of localtunnel "http://progrium.com/localtunnel/" http://progrium.com/localtunnel/" before you started this project? I think it does sort of the same thing. Obviously you have a lot more features than localtunnel does (SSL, HTTP Auth, Raw TCP/UDP tunneling), but it's something to be aware of.
- inconshreveable 13y agoThere are a number of existing projects that have similar or subsets of ngrok's feature set. localtunnel was certainly one of the inspirations for building ngrok.
- digitalmaster 13y agoYup i've been using localtunnel.. but this looks interesting. Bookmarked!
- lolcraft 13y agoIt would be cool if you could put a description of what it is in the title of the page, so that bookmarking it could be faster. If there is a bandwidth or number of connections limit per domain/user (there should be, IMO), it should be in the front page.
- inconshreveable 13y agoFixed the title! There should probably be a bandwidth or connection cap, but I'm reticent to set one before I know what typical usage looks like. I would only want to set one up to prevent abuse of the service.
- pixelmonkey 13y agoBug report: on Linux / Ubuntu 12.04. I set up an account, downloaded ngrok, ran it with -authtoken param using my authtoken, and started my first tunnel. The documentation says I'll only need this authtoken once, and upon subsequent calls, it'll read it from ~/.ngrok. But on my machine, no ~/.ngrok file was created and I need the authtoken param every time. Bug?
- inconshreveable 13y agoI sent you an email with a workaround and instructions on how to capture the logs I would need to debug it. I'll also try to reproduce this myself shortly.