Структура моего сервера выглядит следующим образом:
/
|--/api1
|--/staging.api1
|--/api2
|--/staging.api2
, где каждое приложение доступно через следующую конфигурацию на основе обратного прокси-сервера:
ProxyRequests Off
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule proxy_wstunnel_module modules/mod_proxy_wstunnel.so
ProxyPreserveHost On
ProxyVia Full
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
SSLProxyEngine on
RewriteEngine On
# Websocket
RewriteCond %{HTTP:Connection} Upgrade [NC]
RewriteCond %{HTTP:Upgrade} websocket [NC]
#RewriteRule /staging.api1/(.*) ws://localhost:3001/$1 [P,L]
RewriteRule /api1/(.*) ws://localhost:3002/$1 [P,L]
### REST APIs
ProxyPass /staging.api1 http://localhost:3001
ProxyPassReverse /staging.api1 http://localhost:3001
ProxyPass /api1 http://localhost:3002
ProxyPassReverse /api1 http://localhost:3002
Eveyrthing работал нормально, когда только Продукция (api1
) и соответствующая ей конфигурация веб-сокета. Однако после реализации новой конфигурации для промежуточной среды он испортил весь файл, и маршруты портов перестали быть доступными.
Если удаляется неправильная конфигурация веб-сокета (staging.api1
), все остальное работает нормально.
Кто-нибудь знает, что могло пойти не так?
Заранее спасибо