Skip to content

Instantly share code, notes, and snippets.

@rba
Created January 22, 2020 08:14
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save rba/3f5a52f5bde947adec3199cf8ed7e932 to your computer and use it in GitHub Desktop.
Save rba/3f5a52f5bde947adec3199cf8ed7e932 to your computer and use it in GitHub Desktop.

server { listen 80; server_name stage.rakudo.org stage-rakudo.rakulang.site;

include snippets/letsencrypt.conf; return 301 https://$host$request_uri;

access_log /var/log/nginx/stage.rakudo.org.access.log; error_log /var/log/nginx/stage.rakudo.org.error.log; }

server { listen 443 ssl; # managed by Certbot server_name stage.rakudo.org stage-rakudo.rakulang.site; ssl_certificate /etc/letsencrypt/live/stage.rakudo.org/fullchain.pem; # managed by Certbot ssl_certificate_key /etc/letsencrypt/live/stage.rakudo.org/privkey.pem; # managed by Certbot ssl_trusted_certificate /etc/letsencrypt/live/stage.rakudo.org/chain.pem;

include snippets/letsencrypt.conf; include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot

ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot

location ~ /(dl|downloads)/rakudo/(rakudo-(\d\d\d\d.\d\d(.\d)?).tar.gz(.asc)?)$ { return 302 https://github.com/rakudo/rakudo/releases/download/$3/$2; }

location ~ /(dl|downloads)/nqp/(nqp-(\d\d\d\d.\d\d(.\d)?).tar.gz(.asc)?)$ { return 302 https://github.com/perl6/nqp/releases/download/$3/$2; }

location ~ /downloads/star/(rakudo-star-\d\d\d\d.\d\d.+)$ { return 302 /dl/star/$1; }

location ~ downloads/star?$ { # for https://rakudo.perl6.org/downloads/star/ (used in docs.perl6.org) return 302 /files/star; } location ~ /(dl|downloads)/rakudo { return 302 https://github.com/rakudo/rakudo/releases; }

location / { proxy_pass http://127.0.0.1:5242; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection “upgrade”; proxy_set_header Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; }

access_log /var/log/nginx/stage.rakudo.org.access.log; error_log /var/log/nginx/stage.rakudo.org.error.log;

}

@patrickbkr
Copy link

patrickbkr commented Jan 22, 2020

server {
    listen 80;
    server_name stage.rakudo.org stage-rakudo.rakulang.site;

    include snippets/letsencrypt.conf;
    return 301 https://$host$request_uri;

    access_log /var/log/nginx/stage.rakudo.org.access.log;
    error_log /var/log/nginx/stage.rakudo.org.error.log;
}

server {
    listen 443 ssl; # managed by Certbot
    server_name stage.rakudo.org stage-rakudo.rakulang.site;
    ssl_certificate /etc/letsencrypt/live/stage.rakudo.org/fullchain.pem; # managed by Certbot
    ssl_certificate_key /etc/letsencrypt/live/stage.rakudo.org/privkey.pem; # managed by Certbot
    ssl_trusted_certificate /etc/letsencrypt/live/stage.rakudo.org/chain.pem;

    include snippets/letsencrypt.conf;
    include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot

    ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot

# removed 2019-12-11 by request of patrickb:
#    location ~ /files/rakudo$ {
#        return 302 https://github.com/rakudo/rakudo/releases;
#    }

#    location ~ /latest/star/win64 {
#        return 302 /files/star/windows;
#    }
#    location ~ /latest/star/(.*) {
#        return 302 /files/star/$1;
#    }
#
#    location ~ /(dl|downloads)/rakudo/(rakudo-(\d\d\d\d\.\d\d(\.\d)?)\.tar\.gz(\.asc)?)$ {
#        return 302 https://github.com/rakudo/rakudo/releases/download/$3/$2;
#    }
#
#    location ~ /(dl|downloads)/nqp/(nqp-(\d\d\d\d\.\d\d(\.\d)?)\.tar\.gz(\.asc)?)$ {
#        return 302 https://github.com/perl6/nqp/releases/download/$3/$2;
#    }

    location ~ /downloads/star/(rakudo-star-\d\d\d\d\.\d\d.+)$ {
        return 302 /dl/star/$1;
    }

    # 2019-08-11, rba add additional "redirects" based on https://github.com/perl6/rakudo.org/issues/28
    location ~ /files/star/?$ { # for https://rakudo.perl6.org/downloads/star/ (used in docs.perl6.org)
        return 302 /downloads/star;
    }
#    location ~ /(dl|downloads)/rakudo {
#        return 302 https://github.com/rakudo/rakudo/releases;
#    }

    location / {
        proxy_pass http://127.0.0.1:5242;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_set_header Host $host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }

    access_log /var/log/nginx/stage.rakudo.org.access.log;
    error_log /var/log/nginx/stage.rakudo.org.error.log;
}

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment