Forum Replies Created

Viewing 12 replies - 1 through 12 (of 12 total)
  • Hi Roy, both wp-ffpc and w3 total cache both do page caching albeit in different ways. The advantage of wp-ffpc (and the reason why I choose it myself) is that caching is offloaded to the nginx webserver and doesn’t involve wordpress which makes this a very fast solution. With w3 total cache the caching is handled by the plugin in wordpress. W3 total cache offers more functionality than wp-ffpc because it also does css/js minification, cdn support etc … These functions need to be supplied by other plugins if you need them and you want to use wp-ffpc. I use the following set of plugins that work well with wp-ffpc (not that wp-ffpc is very finicky, its just the set I’ve found works without any issues):
    – WP S3 Offload, uploads media files to S3 and CloudFront CDN
    – MinQueue, lovely plugin that gives a lot of control on minification and concatenation of css and js

    This set gives you similar features as w3 total cache

    Hi, could you elaborate on why you want to customise the file names (or what you would like to customise)?

    The filename itself is determined in function get_group_handle in class.minqueue.php

    Hi Damiaan,
    probably too late to be of any use to you but some css files are quite finicky about the order in which they are loaded. If you have a Bootstrap based theme I’ve found its best to keep the basic Bootstrap CSS file out of MinQueue and have it load first.

    In general the best approach is to experiment with the CSS files by adding one after the other and see if everything still works. If not shuffle the order around in MinQueue and see if that solves the problem. If you still have issues with one or two CSS files than leave them out altogether.

    I hope this helps

    As a side note with regards to wp-cron requiring traffic, you can also set it up as a regular cron job (I’ve done some myself) which takes out the traffic requirement. See http://support.hostgator.com/articles/specialized-help/technical/wordpress/how-to-replace-wordpress-cron-with-a-real-cron-job

    Thread Starter postme

    (@postme)

    Wonderful, tnx Peter!

    Thread Starter postme

    (@postme)

    sorry for the late reply, you probably have found the following by now yourself:
    http://wiki.nginx.org/HttpSetMiscModule#set_sha1
    http://wiki.nginx.org/HttpSetMiscModule#set_md5

    I’m using this from nginx without issues.

    Thread Starter postme

    (@postme)

    tnx aeothomas, will look into your solution!

    Thread Starter postme

    (@postme)

    Hi mattstep, no unfortunately not, havent heard a peep from the dev team so far. I have the rather horrible suspicion that the plugin doesnt work with the new 2013-01-01 API but can’t proof it.

    Thread Starter postme

    (@postme)

    Just a hunch, does lift-search support the 2013-01-01 API?

    Thread Starter postme

    (@postme)

    I have installed the AWS SDK for PHP and have created the following cloudsearch client:

    <?php
    require ‘/usr/share/nginx/html/cloudsearch/vendor/autoload.php’;

    use Aws\CloudSearch\CloudSearchClient;

    $client = CloudSearchClient::factory(array(
    ‘key’ => ‘XXXXXXXXXXXXXXXXXXXX’,
    ‘secret’ => ‘XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX’,
    ‘region’ => ‘eu-west-1’
    ));

    $iterator = $client->getDescribeDomainsIterator();
    foreach ($iterator as $domain) {
    echo $domain[‘DomainName’] . “\n”;
    }

    ?>

    This works flawlessly and the script produces my search domain. It uses the exact same access key and secret key as I’m trying to use in lift-search.

    I’ve tried the lift-search plugin on a different server with exactly the same issue. I’ve tried it on Apache and nginx. I’ve tried it with an older version of WordPress (3.6) and the most recent version 3.9. All situations give the same error wrt access key and security key.

    Looks like the issue is in the lift-search code?

    Thread Starter postme

    (@postme)

    This is additonal http logging taken when verifying the access + secret key:

    Remote Address:xx.xxx.xx.xxx:80
    Request URL:http://wp.test.net/wp-admin/admin-ajax.php?action=lift_setting&setting=credentials&nonce=0b16b2aca9
    Request Method:POST
    Status Code:400 Bad Request
    Request Headersview parsed
    POST /wp-admin/admin-ajax.php?action=lift_setting&setting=credentials&nonce=0b16b2aca9 HTTP/1.1
    Host: wp.test.net
    Connection: keep-alive
    Content-Length: 188
    Accept: application/json, text/javascript, */*; q=0.01
    Origin: http://wp.test.net
    X-Requested-With: XMLHttpRequest
    User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/34.0.1847.116 Safari/537.36
    X-HTTP-Method-Override: PUT
    Content-Type: application/x-www-form-urlencoded
    DNT: 1
    Referer: http://wp.test.net/wp-admin/options-general.php?page=lift-search
    Accept-Encoding: gzip,deflate,sdch
    Accept-Language: nl-NL,nl;q=0.8,en-US;q=0.6,en;q=0.4,de;q=0.2
    Cookie: wordpress_6cf1e9f14312c6ad0e649ff5369d143a=XXXXXX%7C1398118448%7Cd33ece68fa286d92844a9b8d92c17de3; wordpress_test_cookie=WP+Cookie+check; wordpress_logged_in_6cf1e9f14312c6ad0e649ff5369d143a=XXXXXX%7C1398118448%7C1bde216eb59056464f916078a5025812; wp-settings-time-1=1397945651

    Query String Parametersview sourceview URL encoded
    action:lift_setting
    setting:credentials
    nonce:0b16b2aca9

    Form Dataview sourceview URL encoded
    model:{“id”:”credentials”,”value”:{“accessKey”:”XXXXXXXXXXXXXXXXXXXX”,”secretKey”:”XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX”}}
    _method:PUT

    Response Headersview parsed
    HTTP/1.1 400 Bad Request
    Date: Sat, 19 Apr 2014 22:14:37 GMT
    Server: Apache
    Access-Control-Allow-Origin: *
    Access-Control-Allow-Credentials: true
    X-Robots-Tag: noindex
    X-Content-Type-Options: nosniff
    Expires: Wed, 11 Jan 1984 05:00:00 GMT
    Cache-Control: no-cache, must-revalidate, max-age=0, public
    Pragma: no-cache
    X-Frame-Options: SAMEORIGIN
    Vary: Accept-Encoding
    Content-Encoding: gzip
    Node: Hardy
    X-UA-Compatible: IE=Edge,chrome=1
    Content-Length: 192
    Connection: close
    Content-Type: application/json

    Thread Starter postme

    (@postme)

    Excellent, did that and it works a treat for the minified CSS file but somehow doesn’t seem to take for the minified JS file.

    I’ve configured the CSS & JS expires lifetime at 8640000 and selected Cache Control policy with cache with max-age.

    Looking in HTTPFox I get for CSS minified file:

    (Status-Line)	  HTTP/1.0 200 OK
    Date	          Tue, 10 Aug 2010 20:51:24 GMT
    Cache-Control	  max-age=8640000
    Content-Encoding  gzip
    Last-Modified	  Tue, 10 Aug 2010 20:49:55 GMT
    Etag	          "86b78b3a0b56f46f4f5008ffef19a29b"
    Content-Type	  text/css

    Looking at the minified JS file I get:

    (Status-Line)	   HTTP/1.0 200 OK
    Date	           Wed, 11 Aug 2010 19:40:47 GMT
    Content-Encoding   gzip
    Last-Modified	   Wed, 11 Aug 2010 19:40:28 GMT
    Etag	           "7d97849854d2871cfa8a74f6a30771e8"
    Content-Type	   application/javascript

    Any idea what I’m doing wrong?

Viewing 12 replies - 1 through 12 (of 12 total)