It won't. You only get to set a macro once. It's more for ease of configuration for a variable that will be used multiple times.
Sent from BlueMail On May 5, 2017, 8:11 AM, at 8:11 AM, Torsten <tmp...@4ss.de> wrote: >Hi! > >I thought I could copy the same static server definition block and only >change a unique macro definition at the top of each server. But this is >not working: > >############################## ># from httpd.conf >############################## ># [...] > ># macro definition >certroot="/etc/ssl/httpd" >docroot="/htdocs" > >domain="domain.tld" >server $domain{ > listen on * tls port 443 > tls certificate $certroot/$domain/$domain.pem > tls key $certroot/$domain/$domain.key > root $docroot/$domain >} > >domain="anotherdomain.tld" >server $domain{ > listen on * tls port 443 > tls certificate $certroot/$domain/$domain.pem > tls key $certroot/$domain/$domain.key > root $docroot/$domain >} > ># [...] >############################## > >The idea was if you have a lot of server definitions you could keep >static the parts that are the same and just change the macro for each >server the line above the server block. > >Because httpd.conf man page says "Macros are not expanded inside >quotes." I cannot use 'root "$docroot/$domain"'. But 'root >$docroot/$domain' isn't accepted either. Does that mean I cannot use >Macros for parts of the config file that reference to files or folders, >because Macros are not expanded inside quotes but keywords with file or >folder options require enclosing quotes? If that's the case I don't >understand what Macros are good for. > >Thanks in advance! > >T.