############################################
Good samples here for Nginx and Apache https://github.com/advplyr/audiobookshelf
############################################
Swag Traefik Reverse Proxy Caddy and others
############################################
Good samples here for Nginx and Apache https://github.com/advplyr/audiobookshelf
############################################
Swag Traefik Reverse Proxy Caddy and others
| <IfModule mod_ssl.c> | |
| <VirtualHost *:443> | |
| ServerName <sub>.<domain>.<tld> | |
| ErrorLog ${APACHE_LOG_DIR}/error.log | |
| CustomLog ${APACHE_LOG_DIR}/access.log combined | |
| ProxyPreserveHost On | |
| ProxyPass / http://localhost:<audiobookshelf_port>/ | |
| RewriteEngine on | |
| RewriteCond %{HTTP:Upgrade} websocket [NC] | |
| RewriteCond %{HTTP:Connection} upgrade [NC] | |
| RewriteRule ^/?(.*) "ws://localhost:<audiobookshelf_port>/$1" [P,L] | |
| # unless you're doing something special this should be generated by a | |
| # tool like certbot by let's encrypt | |
| SSLCertificateFile /path/to/cert/file | |
| SSLCertificateKeyFile /path/to/key/file | |
| </VirtualHost> | |
| </IfModule> |
| subdomain.domain.com { | |
| encode gzip zstd | |
| reverse_proxy <LOCAL_IP>:<PORT> | |
| } |
| server | |
| { | |
| listen 443 ssl; | |
| server_name <sub>.<domain>.<tld>; | |
| access_log /var/log/nginx/audiobookshelf.access.log; | |
| error_log /var/log/nginx/audiobookshelf.error.log; | |
| ssl_certificate /path/to/certificate; | |
| ssl_certificate_key /path/to/key; | |
| location / { | |
| proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; | |
| proxy_set_header X-Forwarded-Proto $scheme; | |
| proxy_set_header Host $host; | |
| proxy_set_header Upgrade $http_upgrade; | |
| proxy_set_header Connection "upgrade"; | |
| proxy_http_version 1.1; | |
| proxy_pass http://<URL_to_forward_to>; | |
| proxy_redirect http:// https://; | |
| } | |
| } |