D7 on nginx/ssl+varnish+apache stack works, except when creating new content. I'm stumped.

Events happening in the community are now at Drupal community events on www.drupal.org.
RandyK's picture

I've tried to post this here a couple of times, where I suspect it's a better fit, but it gets refused every time:

"Your submission has triggered the spam filter and will not be accepted."

So, posted in Forums (https://drupal.org/node/1571680).

Still hoping someone here can take a look.

RandyK

Comments

Fyi, removing Varnish from

RandyK's picture

Fyi, removing Varnish from the stack fixes the problem. So it seems it's Varnish -- either the daemon, the plugin, or the config -- 'colliding' with the node/add.

my varnishlogs & vcl have been added to the Forum post, above.

if ( req.url ~

alanmackenzie's picture

if ( req.url ~ "^/(user/login|user/password|user/register|logout|admin/(.)|node/add/(.))" ) {return (pass);}

Rather than try to whitelist every page with a form why don't you just pass all POST requests instead?

The classic most people use is:

  if (req.request != "GET" && req.request != "HEAD") {
    /* We only deal with GET and HEAD by default */
    return (pass);
  }

You should read the following:

http://drupal.org/node/1196916
http://drupal.org/files/issues/default.vcl_.txt

Rather than try to whitelist

RandyK's picture

Rather than try to whitelist every page with a form why don't you just
pass all POST requests instead?
The classic most people use is:

if (req.request != "GET" && req.request != "HEAD") {
/* We only deal with GET and HEAD by default */
return (pass);
}

I already have.

As referenced in my OP, my current VCL posted in Forums (https://drupal.org/node/1571680) contains

  if (req.request != "GET" &&
  req.request != "HEAD" &&
req.request != "PUT" &&
  req.request != "POST" &&
req.request != "TRACE" &&
    req.request != "OPTIONS" &&
  req.request != "DELETE") { return (pipe);}

==>    if (req.request != "GET" && req.request != "HEAD") {return (pass);}

   if (req.http.Authorization || req.http.Cookie) {return (pass);}
    return (lookup);
   }

You should read the following
...

Most of my vcl, above, WAS taken from the VCL posted in the https://drupal.org/node/1196916 thread.

Also, cribbing from my comment at,

https://drupal.org/node/1419238#comment-5987518
Posted by RandyK on May 12, 2012 at 11:28am

    "As an additional experiment, I swapped in the Lullabot, halcyonCorsai & FourKitchens VCLs from https://drupal.org/node/1196916. In each case, the behavior's the same -- I can't 'add content'."

None of those VCLs work to cure this problem.

High performance

Group notifications

This group offers an RSS feed. Or subscribe to these personalized, sitewide feeds: