Здравствуйте. Не могу найти правильное решение ...
Скомпилировал приложение на React, выгрузил на VPS сервер с доменным именем, но есть еще backend на nodejs и проблема в том, что не получается настроить правильно конфиг nginx, видимо.
Отправляю POST запрос таким образом, также до этого пробовал
http://IP_VPS:порт_nodejs_приложения/api/send-email
Но безуспешно, localhost также не срабатывал...
axios.post('/api/hi', formData)
.then((response) => {
console.log(response);
})
.catch((error) => {
console.log(error);
});
В nodejs:
app.post('/api/hi', (req, res) => {
console.log("OKKKK");
});
Грешу, что проблема в конфигурационном файле:
server {
root /var/www/html;
index index.html index.htm index.nginx-debian.html;
server_name ЗДЕСЬ-МОЙ-ДОМЕН.ru www.ЗДЕСЬ-МОЙ-ДОМЕН.ru;
location / {
# serve static frontend first
try_files $uri $uri/ /index.html;
}
# location ~*^/(api) {
location /api {
proxy_pass http://localhost:4000/;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
listen [::]:443 ssl ipv6only=on; # managed by Certbot
listen 443 ssl; # managed by Certbot
ssl_certificate /etc/letsencrypt/live/trade-mobile.ru/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/trade-mobile.ru/privkey.pem; # managed by Certbot
include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
}server {
if ($host = www.ЗДЕСЬ-МОЙ-ДОМЕН.ru) {
return 301 https://$host$request_uri;
} # managed by Certbot
if ($host = trade-mobile.ru) {
return 301 https://$host$request_uri;
} # managed by Certbot
listen 80 default_server;
listen [::]:80 default_server;
server_name ЗДЕСЬ-МОЙ-ДОМЕН.ru www.ЗДЕСЬ-МОЙ-ДОМЕН.ru;
return 404; # managed by Certbot
}
В proxy_pass
localhost:4000; также пытался указать и IP сервера, но никак :(
Как правильно сделать и забыть об этой боли?