In this guide, we’ll teach you the basics of how servers work. This will prepare you for the other guides in this section, which will show you how you can use your server to host websites, run services, connect to other computers, and more. A server is a computer connected to the internet that “serves” other computers on the internet. Other computers can send a message to the server. Any computer, including your laptop, can be a server. But usually, servers live in data centers, which are large buildings with many specialized computers connected to the internet. Compared with a laptop, data‑center servers are:
  • Always on, with stable, high‑speed networking
  • Built for reliability and continuous load
Just like they say “happiness is a state of mind”, serving is “state of mind” for a computer. Data center servers are a special kind of computer designed to be really good at serving.
All of the websites, and most of the applications we use today run on servers. A company typically runs many servers with duplicate copies of their software, which lets them serve requests from many users at the same time. Most people don’t use servers as personal computers – not even your average computer programmer next door. Before Zo, only the most hardcore computer users had the motivation and skill to set up and use their own personal server.

What is a service?

A service is a computer program, also known as a process, that can listen to requests from other computers on the internet. A process on your computer can have a port, which is a mailbox on your computer where the process can “listen” for incoming messages. Many services can run on the same computer, as long as they use different ports. Computers on the internet communicate using specific languages called protocols. When a service runs on your server, it uses a particular protocol to understand and respond to incoming requests.

Learn to fish

Services on your Zo server

When setting up a service on your Zo server, you only need to provide a handful of settings because we’ve already set up all the hard stuff.
Zo can set up and manage services for you, but it’s helpful to understand what each setting means.
Local portThe port on your server.
TypeThe protocol, either HTTPS or TCP.
EntrypointThe command to start your service.
Working directoryThe folder where the command should run.
Environment variablesAdditional settings for running the command.
After your service is up and running, you’ll get two URLs that you can use to access your service on the public internet. In general, you should:
  • Use the “HTTP Proxy URL” for accessing most web services, like websites and APIs.
  • Use the “Direct Tunnel URL” for non-web services, or if the HTTP Proxy URL doesn’t behave as expected.