У меня есть веб-приложение, разработанное с использованием Angular6 + Django rest framework и размещенное в aws.
Приложение Angular развернуто на моем веб-сервере, который является общедоступным (ip: 3.xx.xx.xx), а Django Api развернут на моем сервере приложений, который является частным (ip: 10.xx.xx.xx)
Я использую nginx для обратного прокси на сервер приложений с веб-сервера. Из углового приложения я формирую конечные точки для вызова функций API.
При нажатии на регистрацию, запрос должен сделать вызов API.
Угловой URL: http://3.xx.xx.xx:8083/signup
Конечная точка API: http://10.xx.xx.xx:8081/api/customer/company_registration/
Но я получаю ошибку ниже, когда нажимаю на кнопку регистрации:
POST http://10.xx.xx.xx:8081/api/customer/company_registration/
net::ERR_CONNECTION_TIMED_OUT
ERROR HttpErrorResponse {headers: HttpHeaders, status: 0, statusText:
"Unknown Error", url: null, ok: false, …}
error: ProgressEvent {isTrusted: true, lengthComputable: false,
loaded: 0, total: 0, type: "error", …}
headers: HttpHeaders {normalizedNames: Map(0), lazyUpdate: null,
headers: Map(0)}
message: "Http failure response for (unknown url): 0 Unknown Error"
name: "HttpErrorResponse"
ok: false
status: 0
statusText: "Unknown Error"
url: null
__proto__: HttpResponseBase
Это конфиг nginx, который я пробовал:
server {
listen 8083;
server_name 3.xx.xx.xx;
client_max_body_size 20m;
access_log /var/log/nginx/access.log;
error_log /var/log/nginx/error.log;
location / {
root /usr/share/nginx/html/;
index index.html;
}
}
server {
listen 8081;
server_name 10.xx.xx.xx;
client_max_body_size 20m;
access_log /var/log/nginx/access.log;
error_log /var/log/nginx/error.log;
# Handles proxying to Django API
location /api/ {
#rewrite ^/api(.*) $1 break;
add_header 'Access-Control-Allow-Origin' "$http_origin" always;
add_header 'Access-Control-Allow-Credentials' 'true' always;
add_header 'Access-Control-Allow-Methods' 'GET, POST, PUT,
DELETE, OPTIONS' always;
add_header 'Access-Control-Allow-Headers'
'Accept,Authorization,Cache-Control,Content-Type,DNT,If-Modified-
Since,Keep-Alive,Origin,User-Agent,X-Requested-With' always;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_pass http://10.xx.xx.xx:8081;
}
}
У меня нет большого опыта работы с nginx. Ценю твою помощь.
Спасибо