{"id":21277984,"url":"https://github.com/b13/proxycachemanager","last_synced_at":"2025-04-09T19:21:43.877Z","repository":{"id":13318411,"uuid":"16005076","full_name":"b13/proxycachemanager","owner":"b13","description":"TYPO3 Extension: Generic Proxy Cache Manager - Can be configured for nginx or Varnish as Reverse Proxy","archived":false,"fork":false,"pushed_at":"2025-03-11T15:08:09.000Z","size":140,"stargazers_count":10,"open_issues_count":1,"forks_count":11,"subscribers_count":12,"default_branch":"master","last_synced_at":"2025-04-05T18:11:39.540Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":"stripe/safesql","license":"gpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/b13.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2014-01-17T16:34:09.000Z","updated_at":"2025-03-11T15:08:00.000Z","dependencies_parsed_at":"2023-11-16T09:29:14.193Z","dependency_job_id":"f1c480aa-d3f1-487f-82a4-165732bc55f5","html_url":"https://github.com/b13/proxycachemanager","commit_stats":{"total_commits":67,"total_committers":12,"mean_commits":5.583333333333333,"dds":0.3880597014925373,"last_synced_commit":"7046c0bc027c62fc8ae465f9737c09aceac48a5a"},"previous_names":[],"tags_count":17,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/b13%2Fproxycachemanager","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/b13%2Fproxycachemanager/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/b13%2Fproxycachemanager/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/b13%2Fproxycachemanager/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/b13","download_url":"https://codeload.github.com/b13/proxycachemanager/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248095293,"owners_count":21046824,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-21T10:08:32.353Z","updated_at":"2025-04-09T19:21:43.848Z","avatar_url":"https://github.com/b13.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"Proxy Cache Manager\n===================\n\nThis TYPO3 extension is a flexible and generic way to track the pages that are cached by a reverse proxy like\nnginx or varnish, or any useful CDN.\n\nCurrently supported backends / providers:\n * Cloudflare CDN (https://packagist.org/packages/b13/cloudflare-cdn)\n * Akamai CDN (https://packagist.org/packages/b13/akamai)\n * Azure CDN (https://packagist.org/packages/b13/azure-purge)\n\nWhat does it do?\n----------------\nBy embracing TYPO3's Caching Framework this extension provides a new cache to track all pages outputted that are\n\"cacheable\". When an editor changes content on a page, the page cache needs to be cleared - and the CDN / reverse proxy\nneeds to be informed that the cache is invalid. This is usually done via a HTTP PURGE request to the CDN / proxy server\nor a custom API.\n\nThe benefits for that are that the editor does not need to worry why out-of-date information is still visible\non his/her website.\n\nRequirements\n------------\n * A TYPO3 setup (v11 LTS+) with cacheable content, see the \"cacheinfo\" extension for what can be tracked with HTTP caches.\n * A CDN or Reverse Proxy (such as nginx or apache2)\n\nSetup\n-----\nInstall the extension and make sure to enter the details about your proxy servers, otherwise the default (`IENV:TYPO3_REV_PROXY`) is used.\n\nDon't forget to set the according TYPO3 settings for using proxies, see `$GLOBALS['TYPO3_CONF_VARS']['SYS']['reverseProxyIP']` and `$GLOBALS['TYPO3_CONF_VARS']['SYS']['reverseProxyHeaderMultiValue']`.\n\nWhenever a cacheable frontend page is now called, the full URL is stored in a cache called \"tx_proxy\" automatically\n(a derivative of the Typo3DatabaseBackend cache), tagged with the pageID. Whenever the cache is flushed, the database\ntable is emptied completely, additionally, a HTTP PURGE call to the reverse proxy is made to empty all caches.\nIf only a certain tag is removed, the PURGE call is made only to the relevant URLs that are stored in the cache.\n\n### Configuration\n\nBy default all administrators can flush the CDN caches via the toolbar\non the top right corner of TYPO3's Backend.\n\nTo enable the button for non-admin editors, use this UserTsConfig option:\n\n`options.clearCache.proxy = 1`\n\nTo explicitly disable the button for specific administrators, use this\nUserTsConfig option:\n\n`options.clearCache.proxy = 0`\n\nCredits\n-------\n\nThe extension was created taken all the great from Andreas Gellhaus, Tom Rüther into account, as well\nas `moc_varnish` and `cacheinfo` as great work before.\n\n[Find more TYPO3 extensions we have developed](https://b13.com/useful-typo3-extensions-from-b13-to-you) that help us deliver value in client projects. As part of the way we work, we focus on testing and best practices to ensure long-term performance, reliability, and results in all our code.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fb13%2Fproxycachemanager","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fb13%2Fproxycachemanager","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fb13%2Fproxycachemanager/lists"}