rewrite rule: MediaWiki to static site
Jeff Dyke
jeff.dyke at gmail.com
Mon Aug 20 22:35:18 UTC 2018
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.
location @corporate {
proxy_pass http://corporate-server$uri;
proxy_intercept_errors on;
recursive_error_pages on;
error_page 404 = @play;
}
location @play {
proxy_pass http://play-server$uri;
}
then in the main location block i simply have:
location / {
include /etc/nginx/shared_foo; #this is simply shared headers, nothing
to do with the logic
try_files $uri @corporate;
}
As @corporate will send to @play only if required.
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.
Best,
Jeff
On Mon, Aug 20, 2018 at 4:10 PM petecooper <nginx-forum at forum.nginx.org>
wrote:
> Francis Daly Wrote:
>
> > In this case, it looks to me that you can probably "return" rather
> > than
> > "rewrite", since everything should probably be a http redirect.
> > non-Mediawiki URL
>
> > [...] Except I would have the config be not a lot more than
> >
> > location = /wiki/index.php { return 301
> > https://example.net/$my_static_wiki; }
>
> > map $arg_title $my_static_wiki {
> > default ""; # or whatever
> > en/Main_Page MainPage;
> > Glossary Glossary;
> > Category:Troubleshooting Troubleshooting;
> > }
> >
> > Make that map (http://nginx.org/r/map) be as big as you like. And you
> > can
> > "include" an external file if you find that easier.
>
> > Good luck with it,
>
> Hello Francis -- thank you very much, that worked perfectly.
>
> The length of the `map` list meant I had to increase `map_hash_bucket_size`
> to `128`, but everything works as you described.
>
> with very best regards, and my heartfelt thanks;
>
> Pete
>
> Posted at Nginx Forum:
> https://forum.nginx.org/read.php?2,280913,280922#msg-280922
>
> _______________________________________________
> nginx mailing list
> nginx at nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.nginx.org/pipermail/nginx/attachments/20180820/5cfb97ab/attachment.html>
More information about the nginx
mailing list