Giter Site home page Giter Site logo

varnish's Introduction

Varnish

Build Status Latest Stable Version Total Downloads License

Introduction

This package provides an out-of-the-box seamless integration between Varnish and Neos. It basically makes Neos send Cache-Control headers and BAN requests to Varnish for all document nodes.

Installation

You can install the package as usual with composer:

composer require flowpack/varnish

When installed, Neos sends headers for cache lifetime and cache invalidation requests.

Compatible with Neos 7.x+

Documentation

For more information, see the documentation

Thanks

This package was originally developed at MOC A/S, published as MOC.Varnish and eventually moved to the Flowpack namespace. You find previous PRs and issues there.

varnish's People

Contributors

aertmann avatar baachi avatar christophlehmann avatar crydotsnake avatar daniellienert avatar hlubek avatar johannessteu avatar nikdro avatar paxuclus avatar peterbucher avatar robinlawinsky avatar snoblucha avatar visay avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

varnish's Issues

Require newer version of friendsofsymfony/http-cache

Hi together,

is there a reason, why Version ~1.3 is required for friendsofsymfony/http-cache. ?
That causes us some trouble in one setup, because 1.3 only allows HTTP-Requests for varnish. No https.

In the current version, it seems like the logic has changed. Is there some known incompatibility with a newer version? Or would it be an option to upgrade to a 2.x version?
I'm not so deep into Varnish as to be able to make a judgment.

Thanks for your help!

BUG: addFlashMessage can not handle Message object

When purging content cache for a certain content type (ex. text/css) you will get the following exception after the purging is done

Exception #1243258395 in line 175 of /var/www/website/Data/Temporary/Production/Cache/Code/Flow_Object_Classes/MOC_Varnish_Controller_VarnishCacheController.php: The message body must be of type string, "object" given. - See also: 20200513062504a2ac87.txt

This is due to a Object being passed to the flashMessage.

This change cast it to a string (using the __toString) method of the Message object

Flow 3.0 / Neos 2.0 support

  • Adjust Policy.yaml
  • Remove "Notice that the search is case-sensitive" in backend module
  • Remove JSON backend module workaround
  • Use notifications when clearing cache for nodes
  • Use notifications for alerts
  • Remove excludeClasses

Improve backend module

Improve styling

Info button to show details like age and lifetime asynchronously

Clear by tag

Neos CMS 5.* version

Hi,

Any known blockes not mentioned in the issue list in order to release a version for Neos CMS 5.*? :-)

Support for Neos 8

Hi,

is it possible to add support for Neos 8, it seems it just needs to update composer.json to allow.

Thanks

Changing an Asset does not flush pages that reference it

Neos creates the following tags in the content cache when using an asset:

  • AssetDynamicTag_<$workspaceHash>_<assetIdentifier>
  • AssetDynamicTag_<assetIdentifier>

Neither of those tags are flushed by this package when an Asset changes (AssetService assetUpdated Signal). See the Neos Package.php for comparison.

Since the MOC\Varnish\Service\ContentCacheFlusherService is basically a copy of the Neos Neos\Neos\Fusion\Cache\ContentCacheFlusher without the Asset stuff, fixing this is relatively easy, but IMO having that logic duplicated isn't great (that already broke once, see #41 and my guess is it might break again with the event sourced CR).

Flowpack.FullPageCache gets around this problem with the following aspect that intercepts the shutdownObject() method of the ContentCacheFlusher and grabs the cache tags: https://github.com/Flowpack/Flowpack.FullPageCache/blob/master/Classes/Aspects/ContentCacheAspect.php#L44

Since other packages seem to have the same problem, maybe adding a new Signal to the shutdownObject() method of the Neos ContentCacheFlusher here is the proper way to resolve this problem.
That way this package could simply connect a Slot to that Signal and flush the same tags that Neos flushes internally.

Provide missing XLIFF files

On a fresh install (version ~2 and Neos 2) an Exception

#1334759591: No XLIFF file is available for MOC.Varnish::Main::en in the locale chain.

is thrown.

Configuration/Settings option to disabled plugin

Hi,

i would like to have an option to disable the plugin by Settings.yaml configuration, because of our surf deployment script. We use the same composer.json on Development and Production context.

In Development context there is no varnish server available but the plugin causes extreme slow down of all publish actions in neos backend.

At the Production server everything is fine ...

Thanks.

Clear varnish cache for specific tags

Problem is that for already cached segments, their tags cannot be retrieved in any way.

Send all tags as headers to the page.

Implement a ban by tag strategy.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.