У меня есть файл с именем /etc/nginx/sites-enabled/wildcard.dev.example.net.
Этот файл находится в среде разработчика, поэтому я загружаю папки на лету со следующейстрока:
server_name ~^(?<folder>[^.]*).dev.example.net;
root /home/foobar/Desktop/Projects/$folder/web;
Так что, если я добавлю папку с именем test, я смогу получить доступ к этой папке с помощью http://test.dev.example.net, теперь мне нужно добавить веб-сокет со следующей структурой ws: //socket.test.dev.example.net
Итак, я пытаюсь понять, как я могу достичь этого ...
map $http_upgrade $connection_upgrade {
default upgrade;
'' close;
}
upstream websocket {
server 127.0.0.1:80;
}
server {
listen 80;
server_name ~^(?<folder>[^.]*).dev.example.net;
charset utf-8;
index index.php index.html index.htm;
root /home/foobar/Desktop/Projects/$folder/web;
error_log /home/foobar/Desktop/Projects/logs/files/access.log;
error_log /home/foobar/Desktop/Projects/logs/files/error73.log;
client_max_body_size 6000M;
location ~* .(ogg|ogv|svg|svgz|eot|otf|woff|mp4|ttf|rss|atom|jpg|jpeg|gif|png|ico|zip|tgz|gz|rar|bz2|doc|xls|exe|ppt|tar|mid|midi|wav|bmp|rtf|js|css)$ {
access_log off;
log_not_found off;
expires 30d;
add_header Pragma "public";
}
location / {
try_files $uri @rewriteapp;
proxy_pass http://socket.$folder.dev.example.net:8080;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
}
location @rewriteapp {
# rewrite all to app.php
rewrite ^(.*)$ /app_dev.php/$1 last;
}
location ~ ^/(app|app_dev|config)\.php(/|$) {
fastcgi_pass unix:/run/php/php7.3-fpm.sock;
fastcgi_split_path_info ^(.+\.php)(/.*)$;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param APPLICATION_ENV magana;
fastcgi_param HTTPS off;
}
location ~ /\.ht {
deny all;
}
}
Есть идеи?Спасибо