Skip to content
Snippets Groups Projects
Commit 4742c50d authored by Gerhard Gonter's avatar Gerhard Gonter :speech_balloon:
Browse files

the real redirector

parent d144cfad
No related branches found
No related tags found
No related merge requests found
# Default server configuration
#
# server {
# listen 80;
# server_name netbox02.univie.ac.at;
# server_name gitlab02.phaidra.org;
# return 301 https://$server_name$request_uri;
# }
# othes.univie.ac.at uses redis database nr. 12 to redirect to utheses-prod
server {
listen 80;
listen 443 ssl http2;
# server_name netbox02.univie.ac.at;
server_name gitlab02.phaidra.org;
server_name othes.univie.ac.at;
root /var/www/html/netbox02;
index index.html index.htm;
# location / {
# try_files $uri $uri/ =404;
# }
# location /hello {
# content_by_lua '
# ngx.header["Content-Type"] = "text/html"
# ngx.say("hello world")
# ';
# }
access_log /var/log/nginx/othesredirect.log;
location / {
content_by_lua_block {
......@@ -40,20 +23,15 @@ local connect = function()
return ngx.exit(ngx.ERROR)
end
red:select(10) -- we use db10
-- red:set('URXN10', 'BLA10')
red:select(12) -- we use db12
return red
end
local meth= ngx.req.get_method()
-- ngx.header["Content-Type"] = "text/html"
-- ngx.say("<h1>hello world</h1>")
-- ngx.say("<p>meth=[", meth, "]</p>");
if meth == "GET" or meth == "HEAD" then
local uri= ngx.var.uri
-- ngx.say("<p>uri=[", uri, "]</p>");
local id, sep, rest
for x1, x2, x3 in string.gmatch(uri, "/(%d+)(/?)(.*)") do
id= x1
......@@ -61,51 +39,35 @@ end
rest= x3
break
end
-- ngx.say("<p>id=[", id, "] sep=[", sep, "] rest=[", rest, "]</p>");
if id and tonumber(id) > 0 then
-- ngx.say("<p>lookup redirect for id=[", id, "]</p>");
local red= connect()
local newurl, err= red:get(id)
if type(newurl) == "string" then
-- ngx.say("<p>newurl=[", newurl, "]</p>")
ngx.redirect(newurl)
ngx.redirect(newurl, 301)
else
ngx.header["Content-Type"] = "text/html"
ngx.say("<p>no redirection found (unkown id)</p>")
ngx.say("<p>no redirection found (unknown id)</p>")
end
else
ngx.header["Content-Type"] = "text/html"
ngx.say("<p>no redirection found (unknown url)</p>")
end
--[[
local args, err= ngx.req.get_uri_args()
for key, val in pairs(args) do
if type(val) == "table" then
ngx.say("<p>", key, ": ", table.concat(val, ", "), "</p>")
else
ngx.say("<p>", key, ": ", val, "</p>")
end
ngx.redirect("https://utheses.univie.ac.at/", 301)
end
--]]
else
ngx.header["Content-Type"] = "text/html"
ngx.say("<h1>sorry, can't help you</h1>")
ngx.redirect("https://utheses.univie.ac.at/", 301)
end
}
}
ssl on;
# ssl_certificate /etc/ssl/certs/fullchain_netbox.univie.ac.at.crt;
# ssl_certificate_key /etc/ssl/private/netbox.univie.ac.at.key;
ssl_certificate /etc/ssl/certs/fullchain_gitlab.phaidra.org.crt;
ssl_certificate_key /etc/ssl/private/gitlab.phaidra.org.key;
# ssl_certificate /etc/ssl/certs/othes.univie.ac.at_fullchain.crt;
# ssl_certificate_key /etc/ssl/private/othes.univie.ac.at.key;
ssl_certificate /etc/ssl/certs/fullchain_netbox.univie.ac.at.crt;
ssl_certificate_key /etc/ssl/private/netbox.univie.ac.at.key;
ssl_session_timeout 5m;
ssl_protocols TLSv1.2 TLSv1.1 TLSv1; # Dropping SSLv3, ref: POODLE
ssl_protocols TLSv1.2 TLSv1.1 TLSv1; # Dropping SSLv3, ref: POODLE
ssl_ciphers 'EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH';
ssl_prefer_server_ciphers on;
ssl_session_cache shared:SSL:10m;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment