From ed5f7108dc24f0012694c2d2f70d5ba9eb7e5470 Mon Sep 17 00:00:00 2001 From: "Dustin C. Hatch" Date: Fri, 4 Jan 2019 20:41:55 -0600 Subject: [PATCH] websites: Add role for pyrocufflink.net site The *websites/pyrocufflink.net* role configures the public web server to host *pyrocufflink.net*. This site has two functions: * It redirects `/` to http://dustin.hatch.name/ * It proxies user home directories (i.e. /~dustin/) to the file server --- roles/websites/pyrocufflink.net/handlers/main.yml | 4 ++++ roles/websites/pyrocufflink.net/meta/main.yml | 4 ++++ roles/websites/pyrocufflink.net/tasks/main.yml | 6 ++++++ .../templates/pyrocufflink.httpd.conf.j2 | 15 +++++++++++++++ websites.yml | 1 + 5 files changed, 30 insertions(+) create mode 100644 roles/websites/pyrocufflink.net/handlers/main.yml create mode 100644 roles/websites/pyrocufflink.net/meta/main.yml create mode 100644 roles/websites/pyrocufflink.net/tasks/main.yml create mode 100644 roles/websites/pyrocufflink.net/templates/pyrocufflink.httpd.conf.j2 diff --git a/roles/websites/pyrocufflink.net/handlers/main.yml b/roles/websites/pyrocufflink.net/handlers/main.yml new file mode 100644 index 0000000..09fd3c8 --- /dev/null +++ b/roles/websites/pyrocufflink.net/handlers/main.yml @@ -0,0 +1,4 @@ +- name: reload httpd + service: + name=httpd + state=reloaded diff --git a/roles/websites/pyrocufflink.net/meta/main.yml b/roles/websites/pyrocufflink.net/meta/main.yml new file mode 100644 index 0000000..32a8538 --- /dev/null +++ b/roles/websites/pyrocufflink.net/meta/main.yml @@ -0,0 +1,4 @@ +dependencies: +- role: certbot + certbot_domains: + - pyrocufflink.net diff --git a/roles/websites/pyrocufflink.net/tasks/main.yml b/roles/websites/pyrocufflink.net/tasks/main.yml new file mode 100644 index 0000000..fbc90b2 --- /dev/null +++ b/roles/websites/pyrocufflink.net/tasks/main.yml @@ -0,0 +1,6 @@ +- name: ensure apache is configured to serve pyrocufflink.net site + template: + src=pyrocufflink.httpd.conf.j2 + dest=/etc/httpd/conf.d/pyrocufflink.net.conf + mode=0644 + notify: reload httpd diff --git a/roles/websites/pyrocufflink.net/templates/pyrocufflink.httpd.conf.j2 b/roles/websites/pyrocufflink.net/templates/pyrocufflink.httpd.conf.j2 new file mode 100644 index 0000000..f90af3d --- /dev/null +++ b/roles/websites/pyrocufflink.net/templates/pyrocufflink.httpd.conf.j2 @@ -0,0 +1,15 @@ +# vim: set sw=4 ts=4 sts=4 et : + + + ServerName pyrocufflink.net + Include conf.d/ssl.include + SSLCertificateFile {{ apache_ssl_certificate }} + SSLCertificateKeyFile {{ apache_ssl_certificate_key }} + + ProxyRequests Off + LogLevel rewrite:trace8 + RewriteEngine On + RewriteRule ^/(~[^/]+)(/.*)?$ {{ userdir_proxy_backend }}/$1$2 [P] + RewriteRule ^/$ http://dustin.hatch.name/ + ProxyPassReverse / {{ userdir_proxy_backend }}/ + diff --git a/websites.yml b/websites.yml index e7b2419..d52bead 100644 --- a/websites.yml +++ b/websites.yml @@ -1,6 +1,7 @@ - hosts: public-web roles: - apache + - websites/pyrocufflink.net - websites/dustin.hatch.name - websites/ebonfire.com - websites/nratonpass.com