Both Debian and CentOS are good choices for a server OS.
We use both in my workplace. We don't install a desktop.
It is not required and it is a waste of resources.
Debian is a good fit for developers, as there
is a great breadth of packages, and often more recent.
CentOS is easier to manage as an Apache server - the way
Debian does it with dozens of little files to enable is harder for
someone with Redhat background to master.
The bonus with CentOS/Redhat is long support lifecycle. You can
install it and keep it running for up to 10 years, with updates.
Debian does not do that, however it provides for good upgrade
support in situ, and this is generally safe to do with relatively
little downtime.
The downside of CentOS/Redhat is the packages like open source DB
or PHP will be older than what many applications want, and you'll need
to work with 3rd party repositories such as Webtatic to get the versions
you want. That's fine, except it introduces a new variable. We've run
into a situation where we want to install a new server identical to
the production version and the repository no longer carries the version
of PHP it once did. It's free, so there are no guarantees they want
to continue patching older versions for security issues, backports, etc.
On the other hand, Redhat has people who are paid to do the backports,
so even with older PHP it is being maintained, and that gets passed on to
CentOS packages.
To get into a specific, CentOS 7.5 provides php 5.4 currently, which is fairly old,
while the current release of Debian 9.6 provides php 7.0.
We generally gravitate to CentOS when the application is relatively boring
like a CMS that is widely used. When the application requires exotic packages
that are not available in CentOS, like a bunch of perl modules (e.g. netdisco)
then we tend to go with Debian. The reasoning is we want the whole thing
updated for security without after thoughts, and stuff installed by cpan
under CentOS will be installed once and forgotten.
servers.