readme.txt (view raw)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 |
=== WP-FFPC ===
Contributors: cadeyrn
Donate link: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=XU3DG7LLA76WC
Tags: cache, page cache, full page cache, nginx, memcached, apc, speed
Requires at least: 3.0
Tested up to: 4.0
Stable tag: 1.6.1
License: GPLv3
License URI: http://www.gnu.org/licenses/gpl-3.0.html
The fastest way to cache: use the memory!
== Description ==
WP-FFPC ( WordPress Fast Full Page Cache ) is a cache plugin for [WordPress](http://wordpress.org/ "WordPress"). It works with any webserver, including apache2, lighttpd, nginx.
It can be configured to join forces with [NGiNX](http://NGiNX.org "NGiNX")'s built-in [memcached plugin](http://nginx.org/en/docs/http/ngx_http_memcached_module.html "memcached plugin") for unbeatable speed.
= Features: =
* Wordpress Network support
* fully supported domain/subdomain based WordPress Networks on per site setup as well
* will work in Network Enabled mode only for subdirectory based Multisites ( per site settings will not work in this case )
* supports various backends
* memcached with [PHP Memcached](http://php.net/manual/en/book.memcached.php "Memcached")
* memcached with [PHP Memcache](http://php.net/manual/en/book.memcache.php "Memcache")
* [APC](http://php.net/manual/en/book.apc.php "APC")
* [APCu](http://pecl.php.net/package/APCu "APC User Cache")
* [Xcache](http://xcache.lighttpd.net/ "Xcache") - not stable yet, volunteer testers required!
* cache exclude options ( home, feeds, archieves, pages, singles; regex based url exclusion )
* (optional) cache for logged-in users
* 404 caching
* canonical redirects caching
* Last Modified HTTP header support ( for 304 responses )
* shortlink HTTP header preservation
* pingback HTTP header preservation
* talkative log for [WP_DEBUG](http://codex.wordpress.org/WP_DEBUG "WP_DEBUG")
* multiple memcached upstream support
* precache ( manually or by timed by wp-cron )
Many thanks for donations, contributors, supporters, testers & bug reporters:
* [Harold Kyle](https://github.com/haroldkyle "Harold Kyle")
* [Eric Gilette](http://www.ericgillette.com/ "Eric Gilette")
* [doconeill](http://wordpress.org/support/profile/doconeill "doconeill")
* [Mark Costlow](mailto:cheeks@swcp.com "Mark Costlow")
* [Jason Miller](mailto:jason@redconfetti.com "Jason Miller")
* [Dave Clark](https://github.com/dkcwd "Dave Clark")
* Miguel Clara
* [plescheff](https://github.com/plescheff)
== Installation ==
1. Upload contents of `wp-ffpc.zip` to the `/wp-content/plugins/` directory
2. Enable WordPress cache by adding `define('WP_CACHE',true);` in wp-config.php
3. Activate the plugin through the `Plugins` menu in WordPress ( site or Network wide )
4. Check the settings in `Settings` ( site or Network Admin, depending on activation wideness ) -> `WP-FFPC` menu in WordPress.
5. Save the settings. THIS STEP IS MANDATORY: without saving the settings, there will be no activated caching!
= Using the plugin with NGiNX =
If the storage engine is either PHP Memcache or PHP Memcached extension, the created entries can be read and served directly from NGiNX ( if it has memcache or memc extension )
A short configuration example is generated on the plugin settings page, under `NGiNX` tab according to the saved settings.
**NOTE:** Some features ( most of additional HTTP headers for example, like pingback, shortlink, etc. ) will not be available with this solution.
== Frequently Asked Questions ==
= How to use the plugin on Amazon Linux? =
You have to remove the default yum package, named `php-pecl-memcache` and install `Memcached` through PECL.
= How to use the plugin in a WordPress Network =
From version 1.0, the plugin supports subdomain based WordPress Network with possible different per site cache settings. If the plugin is network active, obviously the network wide settings will be used for all of the sites. If it's activated only on some of the sites, the other will not be affected and even the cache storage backend can be different from site to site.
= What are the plugin's requirements? =
* WordPress >= 3.0
and **at least one** of the following for storage backend:
* memcached with [PHP Memcached](http://php.net/manual/en/book.memcached.php "Memcached") > 0.1.0
* memcached with [PHP Memcache](http://php.net/manual/en/book.memcache.php "Memcache") > 2.1.0
* [APC](http://php.net/manual/en/book.apc.php "APC")
* [APCu](http://pecl.php.net/package/APCu "APC User Cache")
* [Xcache](http://xcache.lighttpd.net/ "Xcache")
= How logging works in the plugin? =
Log levels by default ( if logging enabled ) includes warning and error level standard PHP messages.
Additional info level log is available when [WP_DEBUG](http://codex.wordpress.org/WP_DEBUG "WP_DEBUG") is enabled.
= How can I contribute? =
In order to make contributions a lot easier, I've moved the plugin development to [GitHub](https://github.com/petermolnar/wp-ffpc "GitHub"), feel free to fork and put shiny, new things in it and get in touch with me [hello@petermolnar.eu](mailto:hello@petermolnar.eu "hello@petermolnar.eu") when you have it ready.
= Where can I turn for support? =
I provide support for the plugin as best as I can, but it comes without guarantee.
Please post feature requests to [WP-FFPC feature request topic](http://wordpress.org/support/topic/feature-requests-14 "WP-FFPC feature request topic") and any questions on the forum.
== Screenshots ==
1. settings screen, cache type and basic settings
2. debug and in depth-options
3. cache exceptions
4. memcached servers settings
5. NGiNX example
== Changelog ==
Version numbering logic:
* every A. indicates BIG changes.
* every .B version indicates new features.
* every ..C indicates bugfixes for A.B version.
= 1.6.1 =
*2014-09-04*
1.6 release, correcting SVN madness with non-recursive copies.
= 1.6.0 =
*2014-05-30*
What's new:
* added functionality to exclude regex urls, contribution from [plescheff](https://github.com/plescheff/wp-ffpc/commit/3c875ad4fe1e083d3968421dd83b9c179c686649)
* added functionality to include "?" containing URL
What's fixed:
* some warning messages removed in case there's not a single backend installed when the plugin is activated
Under the hood:
* major changes to the abstract wp-common class for better interoperability between my plugins
= 1.5.0 =
*2014-05-30*
What's new:
* APCu backend added ( APCu is a stripped version of APC with only user object cache functionality what can be used with PHP 5.4 & 5.5 besides [Opcache](http://php.net/manual/en/book.opcache.php "PHP Opcache") )
= 1.4.0 =
*2014-05-12*
What's new:
* Xcache backend added ( theoretical, partially tested, volunteer testers required )
What's fixed:
* invalidation for comment actions added
= 1.3.3 =
*2014-04-29*
What's changed:
* removed broadcast message
* better logs ( additional logs and adding translation compatibility )
= 1.3.2 =
*2014-04-09*
What's fixed:
* 1.3.1 was a quickfix for an uncommitted change required for 1.3 to work.
* removed PHP warning in case WP_CACHE was off ( see https://github.com/petermolnar/wp-ffpc/issues/14 )
* PHP notices in log from [Harold Kyle](https://github.com/haroldkyle "Harold Kyle")
* ms is really second
= 1.3 =
*2014-04-04*
What's fixed:
* uninstall will not fail anymore ( and I hate PHP for it's retarted language restrictions )
* typo fix for memcache functions from [Dave Clark](https://github.com/dkcwd "Dave Clark")
* uninstall security lines from [Dave Clark](https://github.com/dkcwd "Dave Clark")
* modification to nginx sample file from [Harold Kyle](https://github.com/haroldkyle "Harold Kyle") to skip all urls with query string present
What's new:
* added unix socket memcache module support ( ONLY for memcache backend for now )
= 1.2.2 =
*2013-11-07*
What's fixed:
* 404 for first hit of 404 pages; bug report from [phoenix13](wordpress.org/support/profile/phoenix13 phoenix13)
= 1.2.1 =
*2013-07-23*
What's fixed:
* call to undefined function get_blog_option error fixed
= 1.2 =
*2013-07-17*
What's new:
* additional cookie patterns to exclude visitors from cache, contribution from [Harold Kyle](https://github.com/haroldkyle "Harold Kyle")
* syslog dropped; using "regular" PHP log instead
* pre-cache from wp-cron
* changeable key scheme ( was fixed previously ); possibility to add user-specific cache if PHPESSID cookie is present
What's fixed:
* logged in cookie check fixed ( was not checking all WordPress cookies )
* global error messages to show if settings are not saved
**Dropped functionalities**
* there's no info log on/off anymore, it's triggered when WP_DEBUG is active
* sync protocols has been removed for two reasons: this has to be done by other systems and causes issues in special cases
**For Devs**
* the abstract class have been moved into a separate Github repository, [wp-common](https://github.com/petermolnar/wp-common "wp-common"). Because PHP is not capable of replacing/redefining classes, there's a versioning with the abstract and the utilities class, please be aware of this.
= 1.1.1 =
*2013-04-25*
* bugfix: Memcache plugin was diplaying server status incorrectly ( although the plugin was working )
* bugfix: typo prevented log to work correctly
= 1.1 =
*2013-04-24*
What's new:
* HTML comment option for displaying cache info before closing "body" tag ( a.k.a make sure it works "noob" method )
* pre-cache function ( only manual pre-cache is enabled for now; uses permalinks structure )
* new, additional invalidation method: clear post & all taxonomy cache, including feeds
* full virtual server example to use the plugin with nginx ( originally it was only a snippet required to use the plugin )
What's fixed:
* contributed fixes from [Harold Kyle](https://github.com/haroldkyle "Harold Kyle") to surpress PHP notices and warnings; better CSS & JS enqueue; corrected admin panel descriptions
* bugfix for status check ( there were situations where the status was not updated correctly )
* manual flush cache bug fixed ( was only flushing if the settings were on "flush all" )
* bugfix on data & meta prefixes ( some places used hardcoded prefixes )
* feed caching fixed ( due to a security check it turned out feeds were excluded for a long time )
= 1.0 =
*2013-03-22*
* plugin development using [GitHub repository](https://github.com/petermolnar/wp-ffpc "GitHub repository") from this version
* Software licence change from GPLv2 to GPLv3
* backend code completely replaced ( object-based backend, improved readability & better structure, lot less global vars, etc. )
* added proper uninstall ( uninstall hook was not removing options from DB, uninstall.php will )
* revisited multisite support ( eliminated overwriting-problems )
* preparations for localization support ( all strings are now go through WordPress translate if available )
* more detailed log & error messages
* retouched Memcache initialization ( faster connect, cleaner persistent connections )
* proper settings migration from previous versions
**Bugfixes**
* faulty expiration times fixed
* eliminated warning message for memcache when no memcache extension is present
* fixed multisite settings overwriting issue
**Dropped functions**
* APC entry compression support
= 0.6.1 =
*2013-03-08*
* refactored & corrected backend status check for memcached driver
= 0.6 =
*2013-03-08*
* true WordPress Network support:
* if enabled network-wide, settings will be the same for every site
* if enabled only per site settings could vary from site to site and cache could be active or disabled on a per site basis without interfering other sites
* delete options button to help solving problems
= 0.5.1 =
*2013-03-07*
* settings link for plugins page
* readme cleanup
* setting link URL repair & cleanup
= 0.5 =
*2013-03-06*
WARNING, MAJOR CHANGES!
* default values bug ( causing %3C bug ) really fixed by the help of Mark Costlow <cheeks@swcp.com>
* UI cleanup, new tabbed layout
* WP-FFPC options moved from global menu to under Settings in both Site and Network Admin interfaces
* added 'persistent' checkbox for memcached connections
* added support for multiple memcached servers, feature request from ivan.buttinoni ( ivanbuttinoni @ WordPress.org forum )
* case-sensitive string checks replaced with case-insensitives, contribution of Mark Costlow <cheeks@swcp.com>
* refactored settings saving mechanism
* additional syslog informations
* additional comments on the code
* lots of minor fixes and code cleanup
* donation link on the top
= 0.4.3 =
*2013-03-03*
* long-running %3C bug fixed by the help of Mark Costlow <cheeks@swcp.com>, many thanks for it. It was cause by a bad check in the default values set-up: is_numeric applies for string numbers as well, which was unknown to me, and cause some of the values to be 0 where they should have been something different.
= 0.4.2 =
*2012-12-07*
* added optional sync protocoll option: replace all http->https or https->http depending on request protocol
* binary mode is working correctly with memcached extension
* added warning message for memcache extension in binary mode
**KNOWN ISSUES**
There are major problems with the "memcache" driver, the source is yet unkown. The situation is that there's no response from the memcached server using this driver; please avoid using it!
= 0.4.1 =
*2012-08-16*
* storage key extended with scheme ( http; https; etc. ), the miss caused problems when https request server CSS and JS files via http.
= 0.4 =
*2012-08-06*
* tested against new WordPress versions
* added lines to "memcached" storage to be able to work with NGiNX as well
* added lines to "memcached" to use binary protocol ( tested with PHP Memcached version 2.0.1 )
**KNOWN ISSUES**
* "memcache" extension fails in binary mode; the reason is under investigation
= 0.3.2 =
*2012-02-27*
* apc_cache_info replaced with apc_sma_info, makes plugin faster
= 0.3 =
*2012-02-21*
* added syslog debug messages possibility
* bugfix: removed (accidently used) short_open_tags
= 0.2.3 =
*2012-02-21*
* NGiNX-sample.conf file added, NGiNX config is created from here
= 0.2.2 =
*2012-02-21*
* memcache types bugfix, reported in forum, thanks!
= 0.2.1 =
*2012-02-21*
* bugfix, duplicated inclusion could emerge, fix added, thanks for Géza Kuti for reporting!
= 0.2 =
*2012-02-19*
* added APC compression option ( requires PHP ZLIB ). Useful is output pages are large. Compression is on lowest level, therefore size/CPU load is more or less optimal.
= 0.1 =
*2012-02-16*
* first public release
|