etalon_backend/plugins/offline/cors
Gerchek Gerchek d36c944497 first commit 2021-12-22 13:07:43 +05:00
..
classes first commit 2021-12-22 13:07:43 +05:00
lang first commit 2021-12-22 13:07:43 +05:00
models first commit 2021-12-22 13:07:43 +05:00
updates first commit 2021-12-22 13:07:43 +05:00
.gitignore first commit 2021-12-22 13:07:43 +05:00
CONTRIBUTING.md first commit 2021-12-22 13:07:43 +05:00
LICENSE first commit 2021-12-22 13:07:43 +05:00
Plugin.php first commit 2021-12-22 13:07:43 +05:00
README.md first commit 2021-12-22 13:07:43 +05:00
composer.json first commit 2021-12-22 13:07:43 +05:00
plugin.yaml first commit 2021-12-22 13:07:43 +05:00

README.md

CORS plugin for October CMS

This plugin is based on https://github.com/barryvdh/laravel-cors.

All configuration for the plugin can be done via the backend settings.

The following cors headers are supported:

  • Access-Control-Allow-Origin
  • Access-Control-Allow-Headers
  • Access-Control-Allow-Methods
  • Access-Control-Allow-Credentials
  • Access-Control-Expose-Headers
  • Access-Control-Max-Age

Currently these headers are sent for every request. There is no per-route configuration possible at this time.

Setup

After installing the plugin visit the CORS settings page in your October CMS backend settings.

You can add * as an entry to Allowed origins, Allowed headers and Allowed methods to allow any kind of CORS request from everywhere.

It is advised to be more explicit about these settings. You can add values for each header via the repeater fields.

It is important to set these intial settings once for the plugin to work as excpected!

Filesystem configuration

As an alternative to the backend settings you can create a config/config.php file in the plugins root directory to configure it.

The filesystem configuration will overwrite any defined backend setting.

<?php
// plugins/offline/cors/config/config.php
return [
    'supportsCredentials' => true,
    'maxAge'              => 3600,
    'allowedOrigins'      => ['*'],
    'allowedHeaders'      => ['*'],
    'allowedMethods'      => ['GET', 'POST'],
    'exposedHeaders'      => [''],
];