У меня есть vps, и я использую WHM и cpanel на нем. WHM установил порт 80 для основного порта прослушивания Apache. Я использую фреймворк Laravel, поэтому порт 80 для него. Я хочу использовать socket.io и expressjs на этом vps и каким-то образом использовать обратный прокси Apache, но Apache не может прослушивать любой другой порт (я не знаю почему, но я уверен). Как я могу использовать собственный порт для обратного прокси?
Что я сделал? Напишите это:
# Listen 3400
<VirtualHost *:80> // then change it to <VirtualHost *:3400> and more changes :(
ServerName mydomain.com
ServerAlias www.mydomain.com
ErrorLog /home/domain/logs/error_log
CustomLog /home/domain/logs/access_log combined
ProxyRequests Off
ProxyPreserveHost On
ProxyPass / http://localhost:3000/
ProxyPassReverse / http://localhost:3000/
RewriteEngine On
RewriteCond %{REQUEST_URI} ^/socket.io [NC]
RewriteCond %{QUERY_STRING} transport=websocket [NC]
RewriteRule /(.*) ws://localhost:3000/$1 [P,L]
</VirtualHost>
примечание: когда я тоже это пробовал!
<VirtualHost 127.127.127.127:80> ## 127.127.127.127 is example of real ip
каталог laravel удалил и выразил, и сокет работал правильно!
примечание: я хочу использовать обратный прокси для доступа к express.js (socket.io) как минимум с доменом! например: domain.com/app/socketio