Конфигурация на CORS¶
Какво е CORS?¶
CORS (Cross-Origin Resource Sharing) е HTTP механизъм, който позволява на уеб приложения в един домейн да взаимодействат с ресурси в друг домейн, предотвратявайки потенциални рискове за сигурността. CORS позволява на сървъра да указва кои домейни могат да изпращат заявки към него от уеб браузъри. Без CORS, браузърите блокират заявки между различни домейни поради Same-Origin Policy.
Кога да използвате CORS?¶
CORS конфигурацията е необходима, когато:
- Вашето уеб приложение се намира на различен домейн от контейнера;
- Искате да разрешите на JavaScript код да изпраща заявки към Вашите обекти;
- Използвате AJAX или Fetch API за достъп до данните;
- Вашето приложение използва
XMLHttpRequestза качване или изтегляне на файлове.
Конфигуриране на CORS правила¶
Отваряне на настройките¶
- Изберете контейнера, за който искате да конфигурирате CORS;
- Навигирайте до раздела "Настройки";
- Намерете секцията "Конфигурация на CORS хедъри";
- Натиснете бутона "Редактиране";
Там ще откриете таблица със създадените CORS правила, ако вече сте създавали такива. Можете да имате множество CORS правила за един контейнер. Правилата могат да се разместват в таблицата, като щракнете върху стрелките за нагоре и надолу в дясната част на таблицата, или да се изтриват, като щракнете върху иконката с кошчето.
Създаване на CORS правило¶
Натиснете бутона "Нови CORS правила", за да отворите диалогов прозорец за създаване на ново правило.
Конфигуриране на параметрите¶
В диалоговия прозорец за създаване на ново правило можете да конфигурирате следните параметри:
Позволени източници (Allowed Origins)¶
Въведете домейните, които могат да изпращат cross-domain заявки към контейнера.
- Можете да добавите множество домейни;
- Използвайте
*, за да разрешите всички домейни (не се препоръчва за производствени среди); - Формат:
https://example.comилиhttps://*.example.com.
Пример
Ако Вашият уебсайт е на https://mywebsite.com, въведете точно този домейн.
Позволени методи (Allowed Methods)¶
Изберете поне един HTTP метод, който може да бъде използван за cross-domain заявки:
- GET - за изтегляне на обекти;
- PUT - за качване или обновяване на обекти;
- POST - за качване на обекти;
- DELETE - за изтриване на обекти;
- HEAD - за проверка на съществуването на обекти.
Позволени хедъри (Allowed Headers)¶
По желание може да изберете кои хедъри са разрешени в заявката. Те ще бъдат върнати чрез хедъра Access-Control-Request-Headers.
Често използвани хедъри:
Content-Type- за указване на типа на съдържанието;Authorization- за удостоверяване на потребителя;X-Requested-With- за AJAX заявки;CSRF-Token- за защита срещу CSRF атаки.
Максимално време за кеширане (Max Age)¶
Времето в секунди, през което браузърът може да кешира резултата от preflight заявката. Това намалява броя на допълнителните заявки.
- По подразбиране:
0(браузърът не кешира) - Препоръчително:
3600(1 час) или86400(1 ден)
Запазване на правилото¶
След като конфигурирате всички параметри, натиснете бутона "Създаване", за да запазите правилото.
Управление на CORS правила¶
След като създадете CORS правила, те ще се появят в таблицата с конфигурации. За всяко правило можете да видите:
- Allowed Origins хедър - разрешените домейни;
- Позволени методи - избраните HTTP методи;
- Позволени хедъри - разрешените хедъри;
- Max Age - времето за кеширане;
- Действия - опция за изтриване.
За един контейнер можете да имате множество CORS правила.
Пренареждане на правила
Правилата могат да се пренареждат в таблицата, като щракнете върху стрелките за нагоре и надолу в дясната част на таблицата.
Изтриване на CORS правило¶
За да изтриете CORS правило, следвайте тези стъпки:
Намиране на правилото¶
Намерете правилото, което искате да изтриете, в таблицата с CORS правила.
Избиране на действието¶
Изберете опцията "Изтриване" в колоната "Действия".
Потвърждение¶
Запазете промените чрез бутона "Запазване на промените", за да се приложат.

