Refactor yourpart-https.conf for improved WebSocket handling and domain redirection
- Updated www redirect to exclude WebSocket paths for better functionality. - Consolidated WebSocket upgrade rules for Socket.io and daemon connections. - Enhanced organization of proxy settings for API and WebSocket requests, improving maintainability.
This commit is contained in:
@@ -18,37 +18,38 @@
|
||||
FallbackResource /index.html
|
||||
</Directory>
|
||||
|
||||
# www Redirect (muss zuerst kommen, damit WebSocket-Regeln nicht beeinflusst werden)
|
||||
RewriteEngine on
|
||||
RewriteCond %{SERVER_NAME} =your-part.de
|
||||
RewriteRule ^ https://www.%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
|
||||
|
||||
# Proxy-Einstellungen
|
||||
ProxyPreserveHost On
|
||||
ProxyRequests Off
|
||||
RequestHeader set X-Forwarded-Proto "https"
|
||||
AllowEncodedSlashes NoDecode
|
||||
|
||||
# WebSocket-Upgrade mit RewriteRule (muss VOR ProxyPass stehen!)
|
||||
# WebSocket-Upgrade für Socket.io
|
||||
RewriteCond %{HTTP:Upgrade} websocket [NC]
|
||||
RewriteCond %{HTTP:Connection} upgrade [NC]
|
||||
RewriteRule ^/socket.io/(.*)$ "ws://localhost:2020/socket.io/$1" [P,L]
|
||||
|
||||
# WebSocket-Upgrade für Daemon
|
||||
RewriteCond %{HTTP:Upgrade} websocket [NC]
|
||||
RewriteCond %{HTTP:Connection} upgrade [NC]
|
||||
RewriteRule ^/ws/(.*)$ "ws://localhost:4551/$1" [P,L]
|
||||
# www Redirect (muss zuerst kommen, aber nicht für WebSocket-Pfade)
|
||||
RewriteEngine on
|
||||
RewriteCond %{SERVER_NAME} =your-part.de
|
||||
RewriteCond %{REQUEST_URI} !^/socket\.io/
|
||||
RewriteCond %{REQUEST_URI} !^/ws/
|
||||
RewriteRule ^ https://www.%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
|
||||
|
||||
# API-Requests an Backend weiterleiten
|
||||
ProxyPass "/api/" "http://localhost:2020/api/"
|
||||
ProxyPassReverse "/api/" "http://localhost:2020/api/"
|
||||
|
||||
# HTTP-Proxy für Socket.io (Fallback für Polling)
|
||||
# Socket.io: WebSocket-Upgrade (muss VOR ProxyPass stehen!)
|
||||
RewriteCond %{HTTP:Upgrade} websocket [NC]
|
||||
RewriteCond %{HTTP:Connection} upgrade [NC]
|
||||
RewriteRule ^/socket.io/(.*)$ "ws://localhost:2020/socket.io/$1" [P,L]
|
||||
|
||||
# Socket.io: HTTP-Fallback für Polling
|
||||
ProxyPass "/socket.io/" "http://localhost:2020/socket.io/"
|
||||
ProxyPassReverse "/socket.io/" "http://localhost:2020/socket.io/"
|
||||
|
||||
# HTTP-Proxy für Daemon (Fallback, sollte eigentlich nicht benötigt werden)
|
||||
# Daemon: WebSocket-Upgrade (muss VOR ProxyPass stehen!)
|
||||
RewriteCond %{HTTP:Upgrade} websocket [NC]
|
||||
RewriteCond %{HTTP:Connection} upgrade [NC]
|
||||
RewriteRule ^/ws/(.*)$ "ws://localhost:4551/$1" [P,L]
|
||||
|
||||
# Daemon: HTTP-Fallback (sollte eigentlich nicht benötigt werden)
|
||||
ProxyPass "/ws/" "http://localhost:4551/"
|
||||
ProxyPassReverse "/ws/" "http://localhost:4551/"
|
||||
|
||||
|
||||
Reference in New Issue
Block a user