2012-02-02 3 views
2

운 좋게도 2 일 동안 머리를 긁적니다. 프레스 플로우 6 (드루팔 (Drupal))로 광택 3를 구성했는데 모든 것이 좋았습니다. 즉 바니시가 페이지를 캐싱하고 있습니다. 이제 로그인 후에도 바니시가 캐시됩니다. 그래서 내가 로그 아웃 할 때 나는 여전히 당신이 메시지 등에 로그인되어있는 것을 보게된다.Varnish 3 캐싱 페이지에도 로그인했습니다.

modules/user/user.module 파일에 로그인 할 때 고유 한 쿠키를 설정하려고 시도하고 /etc/varnish/default.vcl 파일을 수정했다. 다음 블록. 하지만 지금 로그 아웃 스크립트에서 예상대로

if (req.http.Cookie ~ "(MY_UNIQUE_COOKIE)") { 
    return (pass); 
} 

모든 작품, 난 완전히 뺀의 시간을 설정 PHP 즉 통해 쿠키를 삭제할 수 없습니다입니다. 브라우저가 닫히거나 다시 시작된 후에 실제 쿠키가 사라지는 것 같습니다.

이제는 브라우저를 닫지 않으면 쿠키가 있고 와니스는 항상 모든 페이지를 Apache Backend로 보냅니다.

도움을 주시면 감사하겠습니다.

감사합니다,

Raheel

답변

0

"드루팔 pressflow 니스 '의 첫 번째 3 개 Google 결과는 금이다. 나는 분명히 충분히 담당자하지만 osuosl 블로그 게시물이 없기 때문에이 게시 어쩌면 경우 약간의 날짜가

또한
  1. http://www.lullabot.com/articles/varnish-multiple-web-servers-drupal
  2. https://wiki.fourkitchens.com/display/PF/Configure+Varnish+for+Pressflow

, 당신은 드루팔의 핵심을 수정해서는 안에 정말 좋은 암호. 그것은 당신의 인생을 비참하게 만들 것입니다. 당신이하고 싶은 일은 통합 지점과 어쩌면 독창성으로 거의 확실하게 관리 할 수 ​​있습니다.

마지막으로 링크 된 기사에서 알 수 있듯이, 프레스 플로우와 드루팔 (Drupal 7+)이 세션 생성을 최적화하여 세션 쿠키가 이미 원하는 기능을 제공하기 때문에 자체 쿠키가 필요합니다.

+0

감사합니다. Drupal에서 Yii로 앱을 이전하는 과정에 있습니다. 나는 당신의 대답을 읽을 수있는 그런 오랜 시간이 지난 후에 stackoverflow로 돌아왔다 ... :) –

0

나는 이것이 오래된 질문이라는 것을 알고 있지만 이것에 관해 약간의 정보를 제공 할 수있을 것이라고 생각했다.

나는 아직 바니시 구문을 모르지만 로그 아웃하면 쿠키의 값을 비워 둘 수 있습니다. 그런 다음 VCL의 헤더에서 모든 빈 쿠키를 제거 할 수 있습니다. 이렇게하면 바니쉬가 의도 한대로 작동합니다.

+0

Thanks buddy! 그것은 정말로 고대의 질문입니다. 그리고 저는 거의 1 년 동안 떨어져있었습니다 :) –

관련 문제