Settings for W3 Total Cache
Posted: January 31st, 2012, 1:23 pm
I just spent a frustrating 2 days trying to debug why S2 Member was not working after migrating a site, and as there was nothing available via google or here, I first list two issues and solutions and then ask further questions:
1) When you get "Unable to verify $_POST vars." in the PayPal IPN communications log and you already know that the server is otherwise configured, check the URL/HomePage setting in WP. It seems that the case of the domain given here must match the case returned by 'hostname'. Perhaps this comparison can be made case insensitive? This took me a long time to work out.
2) When using W3 Total Cachem there is a setting "Cache URIs with query string variables" that must be turned off or it will interfere with S2 Member IPN communications. Specifically you will get multiple blank entries in wp_usermetadata for last_name and first_name, and the membership level will not be bumped but everything will be hunky dory in the IPN logs and your customer will be charged. This is because it is caching a URI that cannot be cached.
So, so much for documenting this in the hope I save some poor soul 2 or 3 days of messing around.
However, seraches revealed various bits of information about s2Member with W3 Total Cache and they are not collected anywhere or very coherent. So I would like to ask what other problems have been found when using the two plugins together and to try and collect this information in the one thread for the benefit of both others, and myself.
Firstly, as far as I understood it and page can flag itself as not cacheable by makeing a call to WP API, which I think sets a header to indicate this. I wonder why S2Member is not doing that. Perhaps it is a bug, perhaps there is a techincal reason. Turning off queried URIs is not terrible, but it seesm that there might be a better way to flag the results as non-cacheable.
I note that in other threads we are told to turn off W3 Total Cache and try Quickcache. Without disrespect, they are not the same product and I for one would prefer to use W3 Total Cache. As both W3 and S2 are important WP plugins, perhaps the developers could co-operate in testing with each other's products? This would be much better. For a start, when I tried Quickcache, I had all sorts of issues on out site that we don't have time (as volunteers) to track down, wheras W3 just works, with the above exception (and turning off cache for logged in users).
I note that you cannot allow gzip compression via PHP, only in Apache, which S2Member can then turn off when delivering files. However, I find the explanation puzzling as while compressing files twice can result in inflation rather than deflation, it does not result in corruption.
So, does anyone else have problems, hopefully with solutions, that they would care to contribute here?
1) When you get "Unable to verify $_POST vars." in the PayPal IPN communications log and you already know that the server is otherwise configured, check the URL/HomePage setting in WP. It seems that the case of the domain given here must match the case returned by 'hostname'. Perhaps this comparison can be made case insensitive? This took me a long time to work out.
2) When using W3 Total Cachem there is a setting "Cache URIs with query string variables" that must be turned off or it will interfere with S2 Member IPN communications. Specifically you will get multiple blank entries in wp_usermetadata for last_name and first_name, and the membership level will not be bumped but everything will be hunky dory in the IPN logs and your customer will be charged. This is because it is caching a URI that cannot be cached.
So, so much for documenting this in the hope I save some poor soul 2 or 3 days of messing around.
However, seraches revealed various bits of information about s2Member with W3 Total Cache and they are not collected anywhere or very coherent. So I would like to ask what other problems have been found when using the two plugins together and to try and collect this information in the one thread for the benefit of both others, and myself.
Firstly, as far as I understood it and page can flag itself as not cacheable by makeing a call to WP API, which I think sets a header to indicate this. I wonder why S2Member is not doing that. Perhaps it is a bug, perhaps there is a techincal reason. Turning off queried URIs is not terrible, but it seesm that there might be a better way to flag the results as non-cacheable.
I note that in other threads we are told to turn off W3 Total Cache and try Quickcache. Without disrespect, they are not the same product and I for one would prefer to use W3 Total Cache. As both W3 and S2 are important WP plugins, perhaps the developers could co-operate in testing with each other's products? This would be much better. For a start, when I tried Quickcache, I had all sorts of issues on out site that we don't have time (as volunteers) to track down, wheras W3 just works, with the above exception (and turning off cache for logged in users).
I note that you cannot allow gzip compression via PHP, only in Apache, which S2Member can then turn off when delivering files. However, I find the explanation puzzling as while compressing files twice can result in inflation rather than deflation, it does not result in corruption.
So, does anyone else have problems, hopefully with solutions, that they would care to contribute here?