Apache se configure en positionnant des directives en mode texte. On trouve une directive par ligne, si une directive doit être écrite sur plusieurs lignes on place en antislash en dernier caractère de la ligne pour indiquer que la directive se poursuit sur la ligne suivante.
Les lignes qui commencent par un # sont des commentaires (pas de commentaire en fin de ligne!); les lignes blanches et les espaces en début de ligne sont ignorés (ce qui permet une indentation des fichiers de configuration).
Apache n'est pas sensible à la casse pour le nom des directives, mais il l'est pour les paramètres de ces directives.
Enfin, les directives peuvent être placées à l'intérieur de sections. Ces sections spécifient un sous-arbre de la zone gérée par Apache et permettent d'écrire des directives spécifiques pour cette zone. Suivant les sections (Directory, Location, VirtualHost, ...), la zone peut correspondre à un ou des sous-arbres dans le système de fichiers de la machine physique sur laquelle tourne le serveur web, ou bien un ensemble d'URLs pour lesquelles le serveur reçoit une requête, ou bien un serveur virtuel...Il existe également des sections conditionnelles (IfDefine, IfModule, ...) qui permettent également de paramétrer finement le comportement du serveur web.