Say you are configuring SSL for your website and after enabling mod_ssl, creating self signed certificates and adding necessary configuration options to your virtual host definition you are still getting errors of the sort:

(98)Address already in use: make_sock: could not bind to address 0.0.0.0:443
no listening sockets available, shutting down
Unable to open logs

in your logs, what do you do? You check who is using the port of course,

$ sudo lsof -i :443
$

But that doesn't lead you anywhere because, guess what, nobody is using port 443.

So what is the problem? It might be because there multiple definitions of the same type. In my case it was because of this line:

Listen 443

which got executed twice. One problem of Apache is that the configuration files are all over the place. It used to be that many configuration options were in the same apache.conf file before but there's a restructuring going on and newer releases emphasize this. You might find old articles and when you use them you can get in these kinds of troubles.

Luckily these problems are not that hard to solve. Just be on the lookout for extra definitions and try to understand which declaration is where and does what. You'll avoid most problems by doing that.