summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSacha Chua <sacha@sachachua.com>2026-05-10 15:07:02 -0400
committerSacha Chua <sacha@sachachua.com>2026-05-10 15:07:02 -0400
commit1f9e3ed871c7365ca1cec24b503473ed5df6234f (patch)
tree68d43d0e366456cf181b6c387f4c62b08a7f21f9
parent8c78b6e2110d8d545b42738fde0c3d70c0f7ee6e (diff)
downloademacsconf-ansible-1f9e3ed871c7365ca1cec24b503473ed5df6234f.tar.xz
emacsconf-ansible-1f9e3ed871c7365ca1cec24b503473ed5df6234f.zip
create 404 page
-rw-r--r--roles/media/tasks/main.yml10
-rw-r--r--roles/media/templates/nginx-site-config16
2 files changed, 23 insertions, 3 deletions
diff --git a/roles/media/tasks/main.yml b/roles/media/tasks/main.yml
index e9daaef..94f10a3 100644
--- a/roles/media/tasks/main.yml
+++ b/roles/media/tasks/main.yml
@@ -49,11 +49,21 @@
template:
src: nginx-include
dest: /etc/nginx/sites-available/{{ media_server_name }}-{{ emacsconf_year }}-include
+- name: Create 404 page
+ template:
+ src: 404.html
+ dest: /var/www/{{ media_server_name }}/404.html
+
- name: Create main configuration if needed
template:
src: nginx-site-config
dest: /etc/nginx/sites-available/{{ media_server_name }}
force: no
+- name: Make sure 404 line is in main config
+ lineinfile:
+ line: error_page 404 403 /404.html;
+ dest: /etc/nginx/sites-available/{{ media_server_name }}
+ insertafter: "listen 443 ssl http2;"
- name: Make sure main configuration is enabled
file:
src: /etc/nginx/sites-available/{{ media_server_name }}
diff --git a/roles/media/templates/nginx-site-config b/roles/media/templates/nginx-site-config
index ba25cba..f6a83b1 100644
--- a/roles/media/templates/nginx-site-config
+++ b/roles/media/templates/nginx-site-config
@@ -1,7 +1,17 @@
server {
- listen 80;
- server_name {{ media_server_name }};
- root /var/www/{{ media_server_name }};
+ listen 80;
+ server_name {{ media_server_name }};
+ root /var/www/{{ media_server_name }};
+ error_page 404 403 /404.html;
+ location / {
+ add_header Cache-Control "no-store, no-cache, must-revalidate";
+ add_header Pragma "no-cache";
+ expires 0;
+ }
+ types {
+ text/plain org;
+ }
+
location ~* \.vtt$ {
add_header Cache-Control "no-cache, no-store, must-revalidate";
add_header Pragma "no-cache";