перенаправить все / api / .. запросы на express - PullRequest
0 голосов
/ 16 февраля 2020

В настоящее время у меня есть сервер nginx, работающий с приложением реагирования в качестве внешнего интерфейса, и сервер express в качестве внутреннего.

Сервер express работает на локальном хосте: 5000 /

  server {
    listen 80 ;

    server_name siteurl;
    server_name siteip;


    # SSL configuration
    #
    # listen 443 ssl default_server;
    # listen [::]:443 ssl default_server;
    #
    # Note: You should disable gzip for SSL traffic.
    # See: https://bugs.debian.org/773332
    #
    # Read up on ssl_ciphers to ensure a secure configuration.
    # See: https://bugs.debian.org/765782
    #
    # Self signed certs generated by the ssl-cert package
    # Don't use them in a production server!
    #
    # include snippets/snakeoil.conf; # Add index.php to the list if you are using PHP
    index index.html index.htm index.nginx-debian.html;

     location ^~ /api/ {
             proxy_set_header X-Real-IP $remote_addr;
             proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
             proxy_set_header X-NginX-Proxy true;
             proxy_pass http://localhost:5000/;
             proxy_ssl_session_reuse off;
             proxy_set_header Host $http_host;
             proxy_cache_bypass $http_upgrade;
             proxy_redirect off;



    }


    location / {
            # First attempt to serve request as file, then

            # as directory, then fall back to displaying a 404.
            root /usr/share/nginx/site/front;
            try_files $uri /index.html =404;
    }

Я хочу, чтобы все запросы / api / * перенаправлялись на мой express сервер, в настоящее время, когда я делаю сайт / api /, он переходит на мой express сервер, однако при выполнении / api / users это не go на мой express сервер и go на мой реагирующий сервер.

Как я смогу заставить это работать thx

1 Ответ

0 голосов
/ 16 февраля 2020

Когда вы используете модификатор ^~ в директиве location, вы фактически указываете nginx, что следующий путь является регулярным выражением. Если это так, вы должны отформатировать его как регулярное выражение:

location ^~ /api/.* {
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...