I have one dedicated server and I do have more than 1 IP address.
Could I run Nginx, Apache, LIGHTTPD and Node.js simultaneously?
I want to make tests, learn.
You can attach each of the servers to a different IP address of the same computer. There are configuration directives for each that will do so.
Listen
: https://httpd.apache.org/docs/2.4/bind.html
Listen
: http://nginx.org/en/docs/http/ngx_http_core_module.html#listen
server.bind
: https://redmine.lighttpd.net/projects/1/wiki/Server_bindDetails
server.listen()
: https://nodejs.org/api/net.html#net_server_listen_port_host_backlog_callback
However, the typical way to do this is to use a single server with one IP address. You would use either Nginx or Apache as the main server (they are the most capable).
You run the various servers on different ports. The non-standard ports (except the main server on port 80) would be firewalled and not accessible except locally. The main server would reverse proxy content from other ports for various virtual hosts.
80
, Lighthttpd on port81
, and so on... In that case, you'll need to change the listening port in their configuration file (explaining how to do so for so many servers is outside the scope of this site). Also be aware that you'll need to open the port in your firewall for each that you'll be connecting to from a remote network (i.e., not accessing it on a local computer).