sites-available (sites disponibles), contient les fichiers de configuration en vrai des sites.
sites-enabled (sites activés), contient juste des liens symboliques vers les configurations que tu veux activer parmi celles qui existent dans sites-available.
Quand tu actives/désactives une configuration avec a2ensite/a2dissite, ça crée juste ou ça enlève le lien symbolique existant dans sites-enabled vers le site que tu veux activer/désactiver.
Sur le principe, c’est ça, un fichier de config décrit un virtual host.
Mais en général, tu vas mettre au moins le virtualhost http et le virtualhost https dans le même fichier, pour simplifier.
Tu peux aussi avoir plusieurs sites qui font partie d’un systéme, et que tu peux vouloir activer/désactiver tous en même temps, dans ce cas là, tu vas mettre la confiog de plusieurs virtualhosts dans un même fichier.
C’est toi qui choisis ton découpage en fichiers qui ne sert qu’à t’aider dans tes manipulations:
de toutes façons, apache recompose un seul gros fichier de configuration avec tout les petits fichiers avant de se lancer, donc le découpage que tu fais, il s’en moque.