Я создал API точку, к которой хочу получить доступ за пределами основного домена. При тестировании запроса в jsfiddle выдает ошибку Access-Control-Allow-Credentials с текущими nginx настройками.
server {
listen 443 ssl http2;
# SSL configuration goes here
ssl_certificate /etc/letsencrypt/live/domain.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/domain.com/privkey.pem;
include /etc/letsencrypt/options-ssl-nginx.conf;
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem;
server_name domain.com;
location / {
proxy_pass http://varnish;
proxy_buffering off;
proxy_request_buffering off;
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 https;
proxy_set_header X-Forwarded-Port 443;
proxy_set_header Host $host;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header X-Forwarded-Host $http_host;
proxy_set_header Ssl-Offloaded "1";
}
}
После этого я попытался добавить новый раздел location. Правила для конкретного урл. С этими настройками у меня выходит 404
location /wp-json/app/v2/post {
add_header 'Access-Control-Allow-Origin' '*';
add_header 'Access-Control-Allow-Credentials' 'true';
add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS';
add_header 'Access-Control-Allow-Headers' 'DNT,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Range';
add_header 'Access-Control-Expose-Headers' 'Content-Length,Content-Range';
}
Если скопировать настройки прокси-сервера в раздел /wp-json/app/v2/post {, то появится ошибка: заголовок «Access-Control-Allow-Origin» содержит несколько значений.
Как настроить Nginx, чтобы запрос к /wp-json/app/v2/post проходил без ошибок