Re: request uri обработка директорий
Dmitriy Lyalyuev
dmitriy at lyalyuev.info
Fri Jun 12 13:30:47 UTC 2015
У меня нет проектов на node.js и проверить ваш конфиг я не могу, но
что-то типа:
location / {
location ~ ^(.*)/economy {
proxy_pass http://127.0.0.1:8000;
...
}
location ~ ^(.*)/dir1 {
proxy_pass http://127.0.0.1:8001;
...
}
}
Это вполне должно работать. Вызывать на каждый запрос if не имеет смысла
- http://wiki.nginx.org/IfIsEvil
Если что-то не работает или работает не так, как вы того ожидаете -
стоит включить debug лог и посмотреть почему все идет не так.
12.06.2015 16:10, iks пишет:
> Показываю файл полностью. И толку там от этих
>
>
> server {
> server_name node.site.ru www.node.site.ru;
> listen *:80;
> disable_symlinks if_not_owner from=$root_path;
> index index.htm index.html index.shtml index.php index.phtml;
> set $root_path /home/user/public_html/site.ru;
> set $port_uri 8000;
>
> if ( $request_uri ~ ^(.*)/economy(.*)$ ) {
> set $port_uri 8001;
> set $root_path /home/user/public_html/site.ru/economy;
> }
> if ( $request_uri ~ ^(.*)/dir(.*)$ ) {
> set $port_uri 8002;
> set $root_path /home/user/public_html/site.ru/dir;
> }
> if ( $request_uri ~ ^(.*)/dir1(.*)$ ) {
> set $port_uri 8003;
> set $root_path /home/user/public_html/site.ru/dir1;
> }
> rewrite ^(.*)/(economy|dir|dir1)(.*) $1$3 last;
>
> location ~*
> ^.+\.(html|htm|jpg|jpeg|gif|png|svg|js|css|mp3|mp4|ogg|mpe?g|avi|zip|gz|bz2?|rar|swf)$
> {
> root $root_path;
> access_log /home/iks/logs/httpd-logs/node.rusdeb.ru.access.log;
> error_page 404 = @fallback;
> }
> location / {
> proxy_pass http://127.0.0.1:$port_uri;
> proxy_redirect http://127.0.0.1:$port_uri/ /;
> proxy_set_header Host $host;
> proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
> proxy_set_header X-Forwarded-Proto $scheme;
> proxy_set_header X-Real-IP $remote_addr;
> }
> location @fallback {
> proxy_pass http://127.0.0.1:$port_uri;
> proxy_set_header Host $host;
> proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
> proxy_set_header X-Forwarded-Proto $scheme;
> proxy_set_header X-Real-IP $remote_addr;
> }
> }
>
> этот поддомен полностью отрабатывает Node. Пробовал через location, запросы
> к серверу идут, но не грузится socket.io/socket.io.js, а без него клиент не
> может установить связь. Поэтому и оптимальный вариант поменять порт и
> директорию ROOT, а остальной конфиг оставлять без изменений
>
> Posted at Nginx Forum: http://forum.nginx.org/read.php?21,259583,259587#msg-259587
>
> _______________________________________________
> nginx-ru mailing list
> nginx-ru at nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru
--
Dmitriy Lyalyuev
DevOps
+380665322962
https://dmitriy.lyalyuev.info
Подробная информация о списке рассылки nginx-ru