<div dir="ltr">Hey there,<br><div class="gmail_quote"><div dir="ltr"><div class="gmail_quote">
<br>
I was reading about global if's / locations and why it isn't possible.<br>
<br>
I would like to suggest the following, maybe it's been suggested<br>
before, who knows:<br>
<br>
<br>
server_group {<br>
  # this if will be duplicated to each of the server { } configs in<br>
this server_group<br>
  if ( $http_user_agent ~* Googlebot ) {<br>
    return 403;<br>
  }<br>
<br>
  server {<br>
    server_name <a href="http://srv1.example.com" target="_blank">srv1.example.com</a>;<br>
  }<br>
<br>
  server {<br>
    server_name <a href="http://srv2.example.com" target="_blank">srv2.example.com</a>;<br>
  }<br>
<br>
}<br>
<br>
It's just a way for me to keep the server { } configs very simple,<br>
runtime it should be just like the if would appear twice. With<br>
includes this makes more sense:<br>
<br>
nginx.conf:<br>
server_group {<br>
  # this if will be duplicated to each of the server { } configs in<br>
this server_group<br>
  if ( $http_user_agent ~* Googlebot ) {<br>
    return 403;<br>
  }<br>
<br>
  include protected-servers/*.conf;<br>
}<br>
<br>
protected-servers/srv1.conf:<br>
server {<br>
  server_name <a href="http://srv1.example.com" target="_blank">srv1.example.com</a>;<br>
}<br>
<br>
protected-servers/srv2.conf:<br>
server {<br>
  server_name <a href="http://srv2.example.com" target="_blank">srv2.example.com</a>;<br>
}<br>
<br>
This way I can enforce the servers in protected-server/*.conf to have<br>
the googlebot check. Otherwise I would have to include a file in each<br>
.conf file, which could lead to human mistakes.<span class="HOEnZb"><font color="#888888"><br>
<span><font color="#888888"><br>
Jaap<br>
</font></span></font></span></div><br></div>
</div><br></div>