diff --git a/config/nginx/default.conf b/config/nginx/default.conf index 4b6ba566b1ba7aebb51caa9030f343b0b3bd5a6c..30bcfabcaf7fca93a9aa5c7d1990bc94de827d23 100644 --- a/config/nginx/default.conf +++ b/config/nginx/default.conf @@ -274,29 +274,28 @@ server { return 301 https://$host/org/corporate-sponsors/details/; } - - location = /org/langsymp/A%20note%20for%20the%20Eclipse%20Language%20Conference.pdf { + location ~ ^/org/langsymp/A(?:%20|\+|\s)note(?:%20|\+|\s)for(?:%20|\+|\s)the(?:%20|\+|\s)Eclipse(?:%20|\+|\s)Language(?:%20|\+|\s)Conference.pdf$ { return 301 https://$host/events/2005/langsymp/a-note-for-the-eclipse-language-conference.pdf; } - location = /org/langsymp/content/org/langsymp/Adding%20support%20for%20a%20new%20language%20to%20an%20Eclipse%20based%20.pdf { + location ~ ^/org/langsymp/content/org/langsymp/Adding(?:%20|\+|\s)support(?:%20|\+|\s)for(?:%20|\+|\s)a(?:%20|\+|\s)new(?:%20|\+|\s)language(?:%20|\+|\s)to(?:%20|\+|\s)an(?:%20|\+|\s)Eclipse(?:%20|\+|\s)based(?:%20|\+|\s).pdf$ { return 301 https://$host/events/2005/langsymp/adding-support-for-a-new-language-to-an-eclipse-based-ide.pdf; } - location = /org/langsymp/Ascher%20-%20Eclipse%20Position.pdf { + location ~ ^/org/langsymp/Ascher(?:%20|\+|\s)-(?:%20|\+|\s)Eclipse(?:%20|\+|\s)Position.pdf$ { return 301 https://$host/events/2005/langsymp/ascher-eclipse-position.pdf; } - location = /org/langsymp/CDT%20Managed%20Build%20System.pdf { + location ~ ^/org/langsymp/CDT(?:%20|\+|\s)Managed(?:%20|\+|\s)Build(?:%20|\+|\s)System.pdf$ { return 301 https://$host/events/2005/langsymp/cdt-managed-build-system.pdf; } - location = /org/langsymp/Compiled%20Language%20Support%20In%20Eclipse.pdf { + location ~ ^/org/langsymp/Compiled(?:%20|\+|\s)Language(?:%20|\+|\s)Support(?:%20|\+|\s)In(?:%20|\+|\s)Eclipse.pdf$ { return 301 https://$host/events/2005/langsymp/compiled-language-support-in-eclipse.pdf; } location = /org/langsymp/CraigRasmussen.pdf { return 301 https://$host/events/2005/langsymp/craig-rasmussen.pdf; } - location = /org/langsymp/Doug%20Lang%20Symp.pdf { + location ~ ^/org/langsymp/Doug(?:%20|\+|\s)Lang(?:%20|\+|\s)Symp.pdf$ { return 301 https://$host/events/2005/langsymp/doug-lang-symp.pdf; } - location = /org/langsymp/Eclipse%20and%20Dynamic%20Languages.pdf { + location ~ ^/org/langsymp/Eclipse(?:%20|\+|\s)and(?:%20|\+|\s)Dynamic(?:%20|\+|\s)Languages.pdf$ { return 301 https://$host/events/2005/langsymp/eclipse-and-dynamic-languages.pdf; } location = /org/langsymp/EclipseEverywhere.pdf { @@ -305,7 +304,7 @@ server { location = /org/langsymp/eclipseLanguagePosition.pdf { return 301 https://$host/events/2005/langsymp/eclipse-language-position.pdf; } - location = /org/langsymp/Extending%20Eclipse%20with%20Languages%20Other%20Than%20Java.pdf { + location ~ ^/org/langsymp/Extending(?:%20|\+|\s)Eclipse(?:%20|\+|\s)with(?:%20|\+|\s)Languages(?:%20|\+|\s)Other(?:%20|\+|\s)Than(?:%20|\+|\s)Java.pdf$ { return 301 https://$host/events/2005/langsymp/extending-eclipse-with-languages-other-than-java.pdf; } location = /org/langsymp/Extending_Eclipse_with_Compiled_Languages_other_than_C.pdf { @@ -323,10 +322,10 @@ server { location = /org/langsymp/MImrisek_Languages_Workshop_PositionPaper.pdf { return 301 https://$host/events/2005/langsymp/m-imrisek-languages-workshop-position-paper.pdf; } - location = /org/langsymp/Multi%20Language%20Support%20-%20User%20Perspective.pdf { + location ~ ^/org/langsymp/Multi(?:%20|\+|\s)Language(?:%20|\+|\s)Support(?:%20|\+|\s)-(?:%20|\+|\s)User(?:%20|\+|\s)Perspective.pdf$ { return 301 https://$host/events/2005/langsymp/multi-language-support-user-perspective.pdf; } - location = /org/langsymp/Split%20along%20Technology%20not%20Language%202005-10.pdf { + location ~ ^/org/langsymp/Split(?:%20|\+|\s)along(?:%20|\+|\s)Technology(?:%20|\+|\s)not(?:%20|\+|\s)Language(?:%20|\+|\s)2005-10.pdf$ { return 301 https://$host/events/2005/langsymp/split-along-technology-not-language-2005-10.pdf; } location = /org/langsymp/StayingPragmatic.pdf { @@ -335,7 +334,7 @@ server { location = /org/langsymp/TestPointInPractice.pdf { return 301 https://$host/events/2005/langsymp/test-point-in-practice.pdf; } - location = /org/langsymp/Volanakis%20-%20Mixed-language%20usage%20scenarios.pdf { + location ~ ^/org/langsymp/Volanakis(?:%20|\+|\s)-(?:%20|\+|\s)Mixed-language(?:%20|\+|\s)usage(?:%20|\+|\s)scenarios.pdf$ { return 301 https://$host/events/2005/langsymp/volanakis-mixed-language-usage-scenarios.pdf; } location = /org/langsymp/langsympduimovich.html {