Reputation: 2388
Here's my code (I've commented out the if-else part as it's not working)
snippets/contents of my config files
/etc/httpd/conf.d/staff.vhost
Define host_domain "staff"
Include /etc/httpd/conf.d/stage_template.vhost
/etc/httpd/conf.d/stage_template.vhost
#<If "${host_domain} == 'main'">
# ServerAlias stage.myhost.com
#</If>
#<Else>
ServerAlias stage-${host_domain}.myhost.com
#</Else>
${host_domain} can have 3 possible values: main or staff or customer
I have tried:
${host_domain}: I get this error
AH00526: Syntax error on line 9 of /etc/httpd/conf.d/stage_template.vhost: Cannot parse condition clause: syntax error, unexpected T_OP_STR_EQ, expecting '('
%{host_domain}: I get another error
AH00526: Syntax error on line 9 of /etc/httpd/conf.d/stage_template.vhost: Cannot parse condition clause: Parse error near '%'
Thanks!
edit: I was using this page as guide.
Upvotes: 2
Views: 4059
Reputation: 4664
<If "false">
...
</If>
Take a look at Expressions in Apache HTTP Server.
EDIT :
if host_domain is not a self created variable make all upper case ${HOST_DOMAIN}
.
and wrap it with single quotations:
#<If "'${host_domain}' == 'main'">
Take a look at this.
Upvotes: 2