PackageTrack
Sign in Get early access

nelmio/cors-bundle

Adds CORS (Cross-Origin Resource Sharing) headers support in your Symfony application

2.6.1 104M downloads/mo #477 most downloaded on Packagist nelmio/NelmioCorsBundle

What this package is like to depend on

Last release 7 months ago

12 Jan 2026

Ships fairly regularly

a new release about every 8 months

Nearly every release is documented

notes for 28 of 28 stable releases

Nothing withdrawn

no release was ever pulled

14 years old

28 releases · first in 2013

2 releases in the last 12 months

see the full history below

Release timeline

28 releases · Jan 2013 to Jan 2026
2014 2016 2018 2020 2022 2024 2026
Release Pre-release

Releases

latest 28
  1. 2.6.1 12 Jan 2026
    Release notes

    What's Changed

    Full Changelog: 2.6.0...2.6.1

    Open source →
  2. 2.6.0 23 Oct 2025
    Release notes

    What's Changed

    Full Changelog: 2.5.0...2.6.0

    Open source →
  3. 2.5.0 24 Jun 2024
    Release notes

    What's Changed

    • Added support for Private Network Access #190
    • Fixed default boolean values being overwritten in per-path configs #186
    • Fixed deprecation notice in Symfony 7.1 #200

    Full Changelog: 2.4.0...2.5.0

    Open source →
  4. 2.4.0 30 Nov 2023
    Release notes

    What's Changed

    • Added Symfony 7 support (#193)
    • Dropped Symfony 4 support (#193)
    • Added bundle config (#184)

    Full Changelog: 2.3.1...2.4.0

    Open source →
  5. 2.3.1 16 Feb 2023
    Release notes

    Full Changelog: 2.3.0...2.3.1

    Open source →
  6. 2.3.0 15 Feb 2023
    Release notes
    • Downgraded CacheableResponseVaryListener's priority from 0 to -10 to ensure it runs after FrameworkExtraBundle listeners have set their cache headers (#179)
    • Added optional logging support if you inject a Logger into the CorsListener you can get debug info about the whole CORS decision process (#173)
    • Added support for setting expose_headers to a wildcard '*' which exposes all headers, this works as long as allow_credentials is not enabled as per the spec (#132)
    • Added skip_same_as_origin flag (default to true which is the old behavior) to allow opting out of skipping the CORS headers in the response if the Origin matches the application's hostname (#178)
    • Fixed ProviderMock having an invalid return type (#169)
    • Dropped support for Symfony 4.3 and 5.0 to 5.3
    Open source →
    Release notes
    • Downgraded CacheableResponseVaryListener's priority from 0 to -10 to ensure it runs after FrameworkExtraBundle listeners have set their cache headers (#179)
      • Added optional logging support if you inject a Logger into the CorsListener you can get debug info about the whole CORS decision process (#173)
      • Added support for setting expose_headers to a wildcard '*' which exposes all headers, this works as long as allow_credentials is not enabled as per the spec (#132)
      • Added skip_same_as_origin flag (default to true which is the old behavior) to allow opting out of skipping the CORS headers in the response if the Origin matches the application's hostname (#178)
      • Fixed ProviderMock having an invalid return type (#169)
      • Dropped support for Symfony 4.3 and 5.0 to 5.3
    Open source →
  7. 2.2.0 01 Dec 2021
    Release notes
    • Added support for Symfony 6
    Open source →
    Release notes
    • Added support for Symfony 6
    Open source →
  8. 2.1.1 20 Apr 2021
    Release notes
    • Fixed response for unauthorized headers containing a reflected XSS (#163)
    Open source →
    Release notes
    • Fixed response for unauthorized headers containing a reflected XSS (https://github.com/nelmio/NelmioCorsBundle/pull/163)
    Open source →
  9. 2.1.0 22 Jul 2020
    Release notes
    • Added Vary: Origin header to cacheable responses to make sure proxies cache them correctly
    Open source →
    Release notes
    • Added Vary: Origin header to cacheable responses to make sure proxies cache them correctly
    Open source →
  10. 2.0.1 15 Nov 2019
    Release notes
    • Reverted CorsListener priority change as it was interfering with normal operations. The priority is back at 250.
    Open source →
    Release notes
    • Reverted CorsListener priority change as it was interfering with normal operations. The priority is back at 250.
    Open source →
  11. 2.0.0 12 Nov 2019
    Release notes
    • BC Break: Downgraded CorsListener priority from 250 to 28, this should not affect anyone but could be a source in case of strange bugs
      • BC Break: Removed support for Symfony <4.3
      • BC Break: Removed support for PHP <7.1
      • Added support for Symfony 5
      • Added support for configuration via env vars
      • Changed the code to avoid mutating the EventDispatcher at runtime
      • Changed the code to avoid returning Access-Control-Allow-Origin: null headers to mark blocked requests
    Open source →
  12. 1.5.6 17 Jun 2019
    Release notes
    • Fixed preflight request handler hijacking regular non-CORS OPTIONS requests.
    Open source →
  13. 1.5.5 27 Feb 2019
    Release notes
    • Compatibility with Symfony 4.1
      • Fixed preflight responses to always include Origin in the Vary HTTP header
    Open source →
  14. 1.5.4 11 Dec 2017
    Release notes
    • Compatibility with Symfony 4
    Open source →
  15. 1.5.3 24 Apr 2017
    Release notes
    • Fixed regression in 1.5.2
    Open source →
  16. 1.5.2 21 Apr 2017
    Release notes
    • Fixed bundle initialization in case paths is empty
    Open source →
  17. 1.5.1 22 Jan 2017
    Release notes
    • Fixed forced_allow_origin_value to always set the header regardless of CORS, so that requests can properly be cached even if they are not always accessed via CORS
    Open source →
  18. 1.5.0 30 Dec 2016
    Release notes
    • Added an forced_allow_origin_value option to force the value that is returned, in case you cache responses and can not have the allowed origin automatically set to the Origin header
      • Fixed Access-Control-Allow-Headers being sent even when it was empty
      • Fixed listener priority down to 250 (This may be BREAKING depending on what you do with your own listeners, but should be fine in most cases, just watch out).
    Open source →
  19. 1.4.1 09 Dec 2015
    Release notes
    • Fixed requirements to allow Symfony3
    Open source →
  20. 1.4.0 13 Jan 2015
    Release notes
    • Added an origin_regex option to allow defining origins based on regular expressions
    Open source →
  21. 1.3.3 10 Dec 2014
    Release notes
    • Fixed a security regression in 1.3.2 that allowed GET requests to be executed from any domain
    Open source →
  22. 1.3.2 18 Sep 2014
    Release notes
    • Removed 403 responses on non-OPTIONS requests that have an invalid origin header
    Open source →
  23. 1.3.1 21 Jul 2014
    Release notes
    • Fixed path key normalization to allow dashes in paths
      • Fixed HTTP method case folding to support clients that send non-uppercased method names
    Open source →
  24. 1.3.0 05 Feb 2014
    Release notes
    • Added support for host-based configuration of the bundle
    Open source →
  25. 1.2.0 29 Oct 2013
    Release notes
    • Bumped symfony dependency to 2.1.0+
      • Fixed invalid trigger of the CORS check when the Origin header is present on same-host requests
      • Fixed fatal error when allow_methods was not configured for a given path
    Open source →
  26. 1.1.1 14 Aug 2013
    Release notes
    • Fixed issue when allow_origin is set to * and allow_credentials to true.
    Open source →
  27. 1.1.0 29 Jul 2013
    Release notes
    • Added ability to set a wildcard on accept_headers
    Open source →
  28. 1.0.0 07 Jan 2013
    Release notes
    • Initial release
    Open source →

Every package, every release, already written down.

The archive is open and free. Watching your own project is what we are building next.

Browse the archive