ServerName example.com
ServerAlias *.example.com
ErrorLog /dev/null
CustomLog /dev/null combined
# Uncomment to enable http -> https rewrite.
#
# RewriteEngine On
# RewriteCond %{SERVER_NAME} =example.com
# RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
# Redirect / https://example.com%{REQUEST_URI}
#
# If you decide to redirect to https,
# you're free to comment lines below.
# Feeling extra fancy? How about custom 503 page,
# when the server is down for maintenance?
# A sample page has been provided in the static/ directory.
Options -Indexes
AllowOverride All
Alias "/.well-known" "/var/www/html/kittyurl-static/.well-known"
ProxyPreserveHost On
ProxyPass /.well-known !
ProxyPass /.well-known/errors/ !
ErrorDocument 503 /.well-known/errors/503.html
# 1. Match EXACT root "/" (for frontend)
ProxyPassMatch ^/$ http://127.0.0.1:6568/
ProxyPassReverse / http://127.0.0.1:6568/
# 2. Match "/assets/" and subpaths (for frontend)
ProxyPass /assets/ http://127.0.0.1:6568/assets/
ProxyPassReverse /assets/ http://127.0.0.1:6568/assets/
ProxyPass /panel/ http://127.0.0.1:6568/panel/
ProxyPassReverse /panel/ http://127.0.0.1:6568/panel/
ProxyPass /about/ http://127.0.0.1:6568/about/
ProxyPassReverse /about/ http://127.0.0.1:6568/about/
# 3. Match ALL OTHER paths (order matters: least specific LAST)
# Forward any and all traffic to backend.
ProxyPass / http://127.0.0.1:6567/
ProxyPassReverse / http://127.0.0.1:6567/
# Shared headers for ALL proxied requests
RequestHeader set X-Forwarded-Proto "http"
RequestHeader set X-Real-IP %{X-Forwarded-For}i
Include /etc/letsencrypt/options-ssl-apache.conf
ServerName example.com
ServerAlias *.example.com
ErrorLog /dev/null
CustomLog /dev/null combined
# Feeling extra fancy? How about custom 503 page,
# when the server is down for maintenance?
# A sample page has been provided in the static/ directory.
Options -Indexes
AllowOverride All
Alias "/.well-known" "/var/www/html/kittyurl-static/.well-known"
ProxyPreserveHost On
ProxyPass /.well-known !
ProxyPass /.well-known/errors/ !
ErrorDocument 503 /.well-known/errors/503.html
# 1. Match EXACT root "/" (for frontend)
ProxyPassMatch ^/$ http://127.0.0.1:6568/
ProxyPassReverse / http://127.0.0.1:6568/
# 2. Match "/assets/" and subpaths (for frontend)
ProxyPass /assets/ http://127.0.0.1:6568/assets/
ProxyPassReverse /assets/ http://127.0.0.1:6568/assets/
ProxyPass /panel/ http://127.0.0.1:6568/panel/
ProxyPassReverse /panel/ http://127.0.0.1:6568/panel/
ProxyPass /about/ http://127.0.0.1:6568/about/
ProxyPassReverse /about/ http://127.0.0.1:6568/about/
# 3. Match ALL OTHER paths (order matters: least specific LAST)
# Forward any and all traffic to backend.
ProxyPass / http://127.0.0.1:6567/
ProxyPassReverse / http://127.0.0.1:6567/
# Shared headers for ALL proxied requests
RequestHeader set X-Forwarded-Proto "https"
RequestHeader set X-Real-IP %{X-Forwarded-For}i
SSLCertificateFile /etc/letsencrypt/live/example.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem