We can log in to the system by username and password in the computer system. The computer system will have a superuser account and regular users, the “administrator” is the superuser account in the Windows OS, and the “root” is the superuser in Linux.
My favourite OS is Linux, and I will be covering Linux only.
As aforementioned, the root user can log in to the system with all privileges, and there would be many systems and regular users. Perhaps the system users will not have login privileges, but regular users will have login privileges without Sudo(superuser) by default.
The groups are respectively created automatically by the system for the users.
As drawn in the image, the users “root” & “abc” would be able to log in to the system, but the user “apache”/”nginx” wouldn’t be. These are the users for running the apache or Nginx servers and serving the applications to the internet/intranet.
So basically, when you are accessing a website/application, the system lets you into the server system as user “apache”/”Nginx”.
Note: By setting inside the configuration and adding to the Apache or Nginx group, the domain name would sometimes be a web server user in the system.
(As in the image, user “abc.com”).
When you set up a webserver to the public internet (Exposing a user to the public by the HTTP Protocol), there are plenty of things to configure in the server configuration of the web. A few of them are HTTP headers.