diff options
author | Kristian Lyngstol <kristian@bohemians.org> | 2016-04-12 18:01:32 +0200 |
---|---|---|
committer | Kristian Lyngstol <kristian@bohemians.org> | 2016-04-12 18:01:32 +0200 |
commit | 09ea945c3908fd42e90eb64c194d9af11d174206 (patch) | |
tree | 8bcf0f98113ea4a92effa1c39344730c7e6f50b0 /misc | |
parent | c3ebdbda43c23ade1e49dfd9f546fba1d15f9941 (diff) |
Actual initial import
Fetched from tgmanage.
Diffstat (limited to 'misc')
-rw-r--r-- | misc/apache2.conf | 56 | ||||
-rw-r--r-- | misc/varnish.vcl | 55 |
2 files changed, 111 insertions, 0 deletions
diff --git a/misc/apache2.conf b/misc/apache2.conf new file mode 100644 index 0000000..08471e0 --- /dev/null +++ b/misc/apache2.conf @@ -0,0 +1,56 @@ +<VirtualHost *:8080> + ServerAdmin drift@gathering.org + ServerName nms.tg16.gathering.org + ServerAlias nms.tg16.gathering.org + + DocumentRoot /srv/tgmanage/web/nms.gathering.org + ScriptAlias /api/write/ /srv/tgmanage/web/nms.gathering.org/api/write/ + ScriptAlias /api/read/ /srv/tgmanage/web/nms.gathering.org/api/read/ + ScriptAlias /api/public/ /srv/tgmanage/web/nms.gathering.org/api/public/ + <Directory "/srv/tgmanage/web/nms.gathering.org/api/write/"> + AllowOverride None + Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch + <RequireAny> + AuthUserFile /srv/tgmanage/web/htpasswd-write + AuthName "Tech:Server Secret Volcano Lair" + AuthType Basic + Require valid-user + </RequireAny> + </Directory> + <Directory "/srv/tgmanage/web/nms.gathering.org/api/read/"> + AllowOverride None + Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch + <RequireAny> + AuthUserFile /srv/tgmanage/web/htpasswd-read + AuthName "The Gathering Network Management System" + AuthType Basic + Require valid-user + </RequireAny> + </Directory> + <Directory "/srv/tgmanage/web/nms.gathering.org/api/public/"> + AllowOverride None + Options +ExecCGI -MultiViews +Indexes +SymLinksIfOwnerMatch + Require all granted + </Directory> + <Directory "/srv/tgmanage/web/nms.gathering.org"> + AllowOverride None + Options Indexes FollowSymLinks MultiViews + AddDefaultCharset UTF-8 + <RequireAny> + AuthUserFile /srv/tgmanage/web/htpasswd-read + AuthName "The Gathering Network Management System" + AuthType Basic + Require valid-user + </RequireAny> + </Directory> + + ErrorLog /var/log/apache2/error-nms.tg16.gathering.org.log + + # Possible values include: debug, info, notice, warn, error, crit, + # alert, emerg. + LogLevel warn + + CustomLog /var/log/apache2/access-nms.tg16.gathering.org.log combined + ServerSignature On + +</VirtualHost> diff --git a/misc/varnish.vcl b/misc/varnish.vcl new file mode 100644 index 0000000..754ecbc --- /dev/null +++ b/misc/varnish.vcl @@ -0,0 +1,55 @@ +# vim: ts=8:expandtab:sw=4:softtabstop=4 + +vcl 4.0; + +backend default { + .host = "127.0.0.1"; + .port = "8080"; +} + +sub vcl_recv { + if (req.url ~ "^/where" || req.url ~ "^/location") { + set req.url = "/api/public/location"; + } + if (req.method != "GET" && + req.method != "HEAD" && + req.method != "PUT" && + req.method != "POST" && + req.method != "TRACE" && + req.method != "OPTIONS" && + req.method != "DELETE") { + # Vi hater alt som er gøy. + return (synth(418,"LOLOLOL")); + } + + if (req.method != "GET" && req.method != "HEAD") { + /* We only deal with GET and HEAD by default */ + return (pass); + } + + # Brukes ikke. Cookies er for nubs. + unset req.http.Cookie; + + # Tvinges gjennom for å cache med authorization-skrot. + return (hash); +} + + +# Rosa magi +sub vcl_hash { + # Wheee. Legg til authorization-headeren i hashen. + hash_data(req.http.authorization); +} + +# Mauve magi. Hva nå enn det er. +# Dette er WIP - Skal flyttes til backend +sub vcl_backend_response { + set beresp.http.x-url = bereq.url; + if (beresp.http.x-ban) { + ban("obj.http.x-url ~ " + beresp.http.x-ban); + } + if (beresp.status != 200) { + set beresp.uncacheable = false; + set beresp.ttl = 5s; + } +} |