<div dir="ltr">Seems like you have a solution, but i've done this recently in the reverse and found this configuration to be incredibly helpful, with little reason to ever update.  I check the primary (static in my case) site first and if it 404's it is sent to a different proxy_pass.  As you can guess i use the Play Framework.<div><br></div><div>  location @corporate {<br></div><div>    proxy_pass <a href="http://corporate-server">http://corporate-server</a>$uri;</div><div>    proxy_intercept_errors on;</div><div>    recursive_error_pages on;</div><div>    error_page 404 = @play;</div><div>  }  </div><div><br></div><div><div>location @play {</div><div>    proxy_pass <a href="http://play-server">http://play-server</a>$uri;</div><div>  }</div></div><div><br></div><div>then in the main location block i simply have:</div><div><br></div><div><div>location / {</div><div>    include /etc/nginx/shared_foo;  #this is simply shared headers, nothing to do with the logic</div><div>    try_files $uri @corporate;</div><div>  }</div></div><div><br></div><div>As @corporate will send to @play only if required. </div><div><br></div><div>I mainly put it out here b/c if someone is searching, this is a way to go about it, without creating a map.  We will add more to static and more to Play overtime, as we already have, and this keeps on chugging. </div><div><br></div><div>Best,<br>Jeff</div></div><br><div class="gmail_quote"><div dir="ltr">On Mon, Aug 20, 2018 at 4:10 PM petecooper <<a href="mailto:nginx-forum@forum.nginx.org">nginx-forum@forum.nginx.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Francis Daly Wrote:<br>
<br>
> In this case, it looks to me that you can probably "return" rather<br>
> than<br>
> "rewrite", since everything should probably be a http redirect.<br>
> non-Mediawiki URL<br>
<br>
> [...] Except I would have the config be not a lot more than<br>
> <br>
>   location = /wiki/index.php { return 301<br>
> <a href="https://example.net/$my_static_wiki" rel="noreferrer" target="_blank">https://example.net/$my_static_wiki</a>; }<br>
<br>
>   map $arg_title $my_static_wiki {<br>
>     default ""; # or whatever<br>
>     en/Main_Page MainPage;<br>
>     Glossary Glossary;<br>
>     Category:Troubleshooting Troubleshooting;<br>
>   }<br>
> <br>
> Make that map (<a href="http://nginx.org/r/map" rel="noreferrer" target="_blank">http://nginx.org/r/map</a>) be as big as you like. And you<br>
> can<br>
> "include" an external file if you find that easier.<br>
<br>
> Good luck with it,<br>
<br>
Hello Francis -- thank you very much, that worked perfectly.<br>
<br>
The length of the `map` list meant I had to increase `map_hash_bucket_size`<br>
to `128`, but everything works as you described.<br>
<br>
with very best regards, and my heartfelt thanks;<br>
<br>
Pete<br>
<br>
Posted at Nginx Forum: <a href="https://forum.nginx.org/read.php?2,280913,280922#msg-280922" rel="noreferrer" target="_blank">https://forum.nginx.org/read.php?2,280913,280922#msg-280922</a><br>
<br>
_______________________________________________<br>
nginx mailing list<br>
<a href="mailto:nginx@nginx.org" target="_blank">nginx@nginx.org</a><br>
<a href="http://mailman.nginx.org/mailman/listinfo/nginx" rel="noreferrer" target="_blank">http://mailman.nginx.org/mailman/listinfo/nginx</a><br>
</blockquote></div>