I just released WP-Cache 1.0 after serveral weeks of developing and testing:
WP-Cache is extremely efficient WordPress hack â€“not a simple pluginâ€“ for page caching. It allows to serve hundred of times more pages per second, and to reduce the response time from several tenths of seconds to less than a millisecond.
Anyone had luck enabling or installing the sysvsem module that is required to have the WP-Cache to work?
1. New small fix version of the plugin, 1.5.1: http://mnm.uib.es/gallir/posts/2005/03/22/200/
2. I chose semaphores because I used to them and it’s the simplest straightforward solution to the problem. I’m studying hpw to do it with flocks, but still have to see how to maintain consistency while writing two different but related files (content+meta) and also how to ensure atomicity when deleting expired files. According to some comment it seems that the ony way is to flock the directory, but I really hate this dirty tricks having a clean one.
So, finally I added support for flock too. WP-Cache now autodetects (since version 1.5.2) if semaphores are available, if so, it uses it. Otherwise it uses flock().
It should be problems for most people now, especially those that contracted external hosting with no semaphores support.
Fatal error: Call to undefined function: sem_get() in /home2/ryan/public_html/blog/wp-includes/wp-cache.php on line 106
I get that error. Does that have to do with the fact I have gzip enabled (it’s enabled default by server admin)?
WP-Cache worked right away for me without a problem — it really improved the responsiveness of the site, too. The only trouble was that it seemed to cache things too eagerly. In particular, I could no longer moderate comments, I think because /wp-admin/post.php was getting cached. Is this a known issue?
I think I see what was happening. WP-cache uses the variable
$script = basename($_SERVER['SCRIPT_NAME']);
to see whether the current script is administrative or not. (It checks to see whether the string ‘wp-‘ is in it. But my host provider (Dreamhost) runs PHP as a module, I think, and this disables the function (eval()?) that makes the SCRIPT_NAME variable useful. It will return something /cgi-system/php.cgi instead of something useful.
Replacing the variable assignment above with
$script = basename($_SERVER['PHP_SELF']);
seems to fix this problem. It seems like this was an issue for the WordPress developers earlier in the year: see this report.
You have to replace SCRIPTNAME with PHPSELF in the relevant if statement too, obviously.
if( !in_array($script, $acceptableFiles) && strstr($_SERVER['PHP_SELF'], 'wp-') )
Important: vesion 1.5.3 and 1.5.4 fixed a couple of showstoppers. Upgrade it please, you will get also flock() if semaphores does not work in your server.
Sorry, forgot the changelog.
2005-03-25: 1.5.4 Fixed a stupid regression, it was creating lot of semaphores. Sorry.
2005-03-24: 1.5.3 Changed SCRIPT_NAME to PHP_SELF as Kieran suggested
2005-03-23: 1.5.2 It autodetect semaphores, if they are no available, it uses flock.
2005-03-22: 1.5.1 Check for buffer size, if zero, don’t process it. gallir
how do I know it is working properly? Should the cache folder be filled with files after I load it?
Yes, basically checking that directory, but also you can check it directly from the browser. Check the 1 or 2 lines ate the end of the html source.
Weird. I followed the simple 3 step instruction to install the plugin but nothing happens at all. Not even errors. http://www.happycrumb.com is my site. I also have semaphores modules on the server. If anyone had this problem please let me know. Thanks.
I followed the simple 3 step instruction to install the plugin but nothing happens at all. Not even errors.
I got that to start with because it wasn’t targetting the cache folder properly. My ‘home’ is different from the wp home, so I hard coded $cache_path.
Unfotunately, I’m on debian stable, which is pre php 4.3, so several functions dont’ work. However, I’m going to update the OS for this, it realy makes a difference!
Solid work on this plugin! The site’s so much faster now.
Doesn’t work for me. Gives me a blank page – http://blog.taragana.com/index.php/archive/no-caching-for-me/
- The topic ‘WP-Cache’ is closed to new replies.