Move static websites from hetznix to nixedo

This commit is contained in:
Oliver Davies 2025-04-18 18:28:17 +01:00
parent c2e4f80364
commit ebf9778b42
24 changed files with 211 additions and 257 deletions

View file

@ -0,0 +1,51 @@
let
sites = import ./sites.nix;
in
{
services = {
nginx = {
enable = true;
virtualHosts = builtins.listToAttrs (
map (site: {
name = site.url;
value = {
root = site.root;
listen = [
{
addr = "localhost";
port = site.port;
}
];
locations."/".tryFiles = "$uri $uri/index.html =404";
extraConfig = builtins.concatStringsSep "\n\n" [
site.extraConfig or ""
''
port_in_redirect off;
# Remove trailing slashes.
rewrite ^/(.*)/$ /$1 permanent;
''
];
};
}) sites
);
};
cloudflared.tunnels."e1514105-327f-4984-974e-e2fbaca76466" = {
ingress = builtins.listToAttrs (
map (site: {
name = site.url;
value = "http://localhost:${toString site.port}";
}) sites
);
};
};
imports = [ ./www.oliverdavies.uk.nix ];
}

View file

@ -0,0 +1,87 @@
[
{
url = "bootstrap-with-tailwind.oliverdavies.uk";
root = "/var/www/bootstrap-with-tailwind";
port = 8081;
}
{
port = 8084;
root = "/var/www/eric";
url = "eric.oliverdavies.uk";
extraConfig = ''
add_header X-Robots-Tag "noindex, nofollow";
'';
}
{
port = 8083;
root = "/var/www/florida-drupalcamp-tailwind-css";
url = "florida-drupalcamp-tailwind-css.oliverdavies.uk";
}
{
port = 8094;
root = "/var/www/luke";
url = "luke.oliverdavies.uk";
extraConfig = ''
add_header X-Robots-Tag "noindex, nofollow";
'';
}
{
port = 8085;
root = "/var/www/phpsw-sculpin-demo";
url = "phpsw-sculpin-demo.oliverdavies.uk";
}
{
port = 8086;
root = "/var/www/rebuilding-acquia";
url = "rebuilding-acquia.oliverdavies.uk";
}
{
port = 8087;
root = "/var/www/rebuilding-bartik";
url = "rebuilding-bartik.oliverdavies.uk";
}
{
port = 8088;
root = "/var/www/rebuilding-bristol-js";
url = "rebuilding-bristol-js.oliverdavies.uk";
}
{
port = 8089;
root = "/var/www/rebuilding-symfony";
url = "rebuilding-symfony.oliverdavies.uk";
}
{
port = 8090;
root = "/var/www/tailwindcss-demo";
url = "tailwindcss-demo.oliverdavies.uk";
}
{
port = 8091;
root = "/var/www/wp-tailwind";
url = "wp-tailwind.oliverdavies.uk";
}
{
port = 8092;
root = "/var/www/zet";
url = "zet.oliverdavies.uk";
}
{
port = 8093;
root = "/var/www/talking-drupal-tailwindcss";
url = "talking-drupal-tailwindcss.oliverdavies.uk";
}
]

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,72 @@
let
port = 8095;
redirects = import ./www.oliverdavies.uk-redirects.nix;
redirectLines = builtins.concatStringsSep "\n" (
map (r: "rewrite ^${r.from}/?$ ${r.to} redirect;") redirects
);
tomePaths = [
"core"
"sites/default/files"
"themes/custom/opdavies"
"tome-test"
];
tomeLocations = builtins.listToAttrs (
map (path: {
name = "/${path}";
value = {
root = "/var/www/website-tome";
tryFiles = "$uri $uri.html $uri/index.html =404";
};
}) tomePaths
);
in
{
services = {
nginx.virtualHosts = {
"www.oliverdavies.uk" = {
root = "/var/www/website-sculpin";
listen = [
{
inherit port;
addr = "localhost";
}
];
locations = tomeLocations // {
"/".tryFiles = "$uri $uri.html $uri/index.html =404";
};
extraConfig = ''
port_in_redirect off;
# Remove trailing slashes.
rewrite ^/(.*)/$ /$1 permanent;
error_page 404 /404;
rewrite ^/talks/archive/?$ /talks permanent;
rewrite ^/talks/(.*)$ /presentations/$1 permanent;
rewrite ^/talks/?$ /presentations permanent;
${redirectLines}
'';
};
"oliverdavies.uk".globalRedirect = "www.oliverdavies.uk";
};
cloudflared.tunnels."e1514105-327f-4984-974e-e2fbaca76466" = {
ingress = {
"oliverdavies.uk" = "http://localhost:${toString port}";
"www.oliverdavies.uk" = "http://localhost:${toString port}";
};
};
};
}