2017-02-14 11 views
0

мой домен использования сайта SSL: https://www.irantk.irApache ProxyPass не работает с io.socket. GET WSS: // ошибка URL 400

в моем брандмауэре разрешить только HTTP, HTTPS протокол и порт 80443

я решил использовать ProxyPass, но работа dosen't и ошибок WebSocket 400. конец моего файла httpd.conf:

RewriteEngine On 
RewriteCond %{REQUEST_URI} ^/socket.io   [NC] 
RewriteCond %{QUERY_STRING} transport=websocket [NC] 
RewriteRule /(.*)   wss://localhost:3000/$1 [P,L] 

ProxyPass  /socket.io http://localhost:3000/socket.io 
ProxyPassReverse /socket.io http://localhost:3000/socket.io 

пожалуйста, помогите мне

ответ

0

попробовать, как этот

<Proxy *> 
    Require all granted 
</Proxy> 

Header  set  Connection "Upgrade" 
RequestHeader setifempty Connection "Upgrade" 
Header  set  Upgrade "websocket" 
RequestHeader setifempty Upgrade "websocket" 

ProxyRequests Off 
ProxyPreserveHost On 

# ----------------------------------------------------- 
RewriteEngine On 


RewriteCond %{QUERY_STRING} transport=websocket   [NC,OR] 
RewriteCond %{HTTP:Upgrade} websocket      [NC,OR] 
RewriteCond %{HTTP:Connection} upgrade     [NC] 
RewriteRule /socket.io/(.*)   ws://localhost:10000/socket.io/$1  [P] 
ProxyPassReverse/    ws://localhost:10000/ 

RewriteCond %{QUERY_STRING} transport=polling   [NC] 
RewriteRule /socket.io/(.*)   http://localhost:10000/socket.io/$1 [P] 
ProxyPassReverse/    http://localhost:10000/ 

RewriteRule ^/socket.io/(.*)  http://localhost:10000/socket.io/$1 [P] 
ProxyPassReverse/    http://localhost:10000/ 

# -----------------------------------------------------