При деплое не отображается виджет Сдек (работает с api yandex карт)

использую виджет Cdek 3.10. https://github.com/cdek-it/widget - инструкция по установке https://github.com/DanisKhasanov/FLX-front — ссылка на гитхаб проекта https://vite-test.flx-it.ru — тестовая ссылка на сам проект (необходимо вкл ВПН, если не загрузит)

Сразу скажу, что я еще junior разработчик, и могу не знать базовых вещей, зарее извиняюсь!

Использую React+Vite для реализации проекта. Ранее локально все отлично работало, service.php находится в корне проекта, php версии 7.4, запускал его с помощью команды php -S localhost:8000. Были проблемы с Cors добавил в service.php с 3 по 13 строчки кода.

Для виджета использовал api Yandex тестовый (который указан в инструкции по установке виджета Сдек, так как с моим созданым в Кабинете разрабочитка Яндекс не открывалась карта) — apiKey: 'f4e0***68d7' После чего решил добавить SSL -сертификат локально с помощью mkcert — тоже все работает и все хорошо, карта открывается и показывает ПВЗ

Далее был добавлен наш проект на веб-сервер. Я использовал Nginx впервые, сделал как все положено, сбилдил проект на сервере, папку dist перенес в /var/www/(вместо html). И так как файл php скорее всего тоже необходимо указать там, он тоже был туда добавлен. После чего был создан сертификат с помощью Let's Encrypt и создан тестовый домен. Вот как выглядит файл конфигурации nginx : /etc/nginx/sites-enabled/default

server {
        listen 80 default_server;
        listen [::]:80 default_server;
        root /var/www/dist;
        index index.html index.htm index.nginx-debian.html;
        server_name vite-test.flx-it.ru;
        location / {
                try_files $uri $uri/ /index.html;
        }
}
 
server {
        root /var/www/dist;
        index index.html index.htm index.nginx-debian.html;
    server_name vite-test.flx-it.ru; # managed by Certbot
        location / {
                try_files $uri $uri/ /index.html;
        }
    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/run/php/php7.4-fpm.sock;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }
    listen [::]:443 ssl ipv6only=on; # managed by Certbot
    listen 443 ssl; # managed by Certbot
    ssl_certificate /etc/letsencrypt/live/vite-test.flx-it.ru/fullchain.pem; # managed by Certbot
    ssl_certificate_key /etc/letsencrypt/live/vite-test.flx-it.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 = vite-test.flx-it.ru) {
        return 301 https://$host$request_uri;
    } # managed by Certbot
        listen 80 ;
        listen [::]:80 ;
    server_name vite-test.flx-it.ru;
    return 404; # managed by Certbot
 
}

Сам сайт работает хорошо, запросы на бекэнд отправляются, единственное что, так это не открываются карты!

Оставил тестовый ip yandex (f4e0***68d7) и изменил расположение файла php на « https://vite-test.flx-it.ru/service.php» и в консоль выводятся ошибки : 1." GET https://vite-test.flx-it.ru/service.php?type=PVZ&is_handout=true&action=offices&page=1&size=1 404 (Not Found)" 2. An error occured while initializing Yandex Map with onComponentMount setting 3. "GET https://geocode-maps.yandex.ru/1.x/?apikey=f4e0…&format=json 403 (Forbidden)." Если коротко то — Invalid Key

Сделал собственный ключ в кабинете разрабоччика, не добавлял настройки для API-ключа и для Домена (https://vite-test.flx-it.ru/ — не добавляется, ошибка «Поле заполнено неправильно: "https://vite-test.flx-it.ru/"»

В результате чего выводятся следующие ошибки :

  1. GET https://vite-test.flx-it.ru/service.php?type=PVZ&is_handout=true&action=offices&page=1&size=1 404 (Not Found)
  2. An error occured while initializing Yandex Map with onComponentMount setting
  3. [CDEK] Service error Cm {message: 'Request failed with status code 404', name: 'AxiosError', code: 'ERR_BAD_REQUEST', config: {…}, request: XMLHttpRequest, …}

Использовал разные комбинации, разные ключи, изменял всячески php файл, но все безнадежно, Вы единственная помощь !)))) Прощу прощения заранее, но повторюсь, что я джун разработчик, поэтому могу не знать чего-либо)


Ответы (1 шт):

Автор решения: YaSupport

Ограничения для ключей в кабинете разработчика следует прописывать без обозначения протокола, порта и url. По одному значению в каждой строке. Эта информация прописана под самим полем для привязки доменов кабинета.

Пропишите ключу связь следующей строкой: vite-test.flx-it.ru

→ Ссылка