Skip to content

Instantly share code, notes, and snippets.

@Kylmakalle
Created September 9, 2017 18:13
Show Gist options
  • Save Kylmakalle/d145e54d96110d56986de839d86cd105 to your computer and use it in GitHub Desktop.
Save Kylmakalle/d145e54d96110d56986de839d86cd105 to your computer and use it in GitHub Desktop.
nginx.conf appender for routing to local webservers
server {
listen 443 ssl;
server_name domain.com;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_certificate /etc/letsencrypt/live/domain.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/domain.com/privkey.pem;
# First Entry
location /VAR1/ {
proxy_pass http://127.0.0.1:VAR2/;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Host $server_name;
}
# Second Entry
location /VAR3/ {
proxy_pass http://127.0.0.1:VAR4/;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Host $server_name;
}
# Auto generated entry
location /12321421412:ashdkasjda/ {
proxy_pass http://127.0.0.1:1345/;
proxy_redirect off;
proxy_set_header Host $host;;
proxy_set_header X-Real-IP $remote_addr;;
proxy_redirect X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_redirect X-Forwarded-Host $server_name;
}
}
import nginx # https://github.com/peakwinter/python-nginx
token = '12321421412:ashdkasjda'
local_port = 1345
bot_name = 'Test bot @abcde_bot'
c = nginx.loadf('bots.config')
serv = c.children[0]
serv.add(
nginx.Comment('{}'.format(bot_name)),
nginx.Location('/{}/'.format(token),
nginx.Key('proxy_pass', 'http://127.0.0.1:{}/'.format(local_port)),
nginx.Key('proxy_redirect', 'off'),
nginx.Key('proxy_set_header', 'Host $host;'),
nginx.Key('proxy_set_header', 'X-Real-IP $remote_addr;'),
nginx.Key('proxy_redirect', 'X-Forwarded-For $proxy_add_x_forwarded_for'),
nginx.Key('proxy_redirect', 'X-Forwarded-Host $server_name')
)
)
nginx.dumpf(c, 'bots.config')
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment