web-dev-qa-db-ja.com

Varnishを正常に動作させることができず、何もキャッシュできません。 (ニス塗りは実行中、ステータスはティックです)

システム情報:

  • Ubuntu/LAMP
  • Drupal 7.14
  • ワニス3.0.2
  • ワニスモジュール:7.x-1.0-beta1
  • httpポート80

Varnishをサーバーにインストールしました。

私はそれを次のように始めました:

$ Sudo varnishd -f default.vcl -s malloc,1G -T 127.0.0.1:2000

varnishdが起動して実行中です。

default.vclの詳細(このページから: https://www.varnish-cache.org/trac/wiki/VarnishAndDrupal

backend default {
    .Host = "127.0.0.1";
    .port = "80";
}


sub vcl_recv {
  // Remove has_js and Google Analytics __* cookies.
  set req.http.Cookie = regsuball(req.http.Cookie, "(^|;\s*)(__[a-z]+$
  // Remove a ";" prefix, if present.
  set req.http.Cookie = regsub(req.http.Cookie, "^;\s*", "");
  // Remove empty cookies.
  if (req.http.Cookie ~ "^\s*$") {
    unset req.http.Cookie;
  }

  // Cache all requests by default, overriding the
  // standard Varnish behavior.
  // if (req.request == "GET" || req.request == "HEAD") {
  //   return (lookup);
  // }
}

sub vcl_hash {
  if (req.http.Cookie) {
    hash_data(req.http.Cookie);
    return (hash);
  }
}

Vanishモジュールが有効になりました。

Settings.phpに追加された以下の設定

$conf['cache_backends'][] = 'sites/all/modules/varnish/varnish.cache.inc';
$conf['cache_class_cache_page'] = 'VarnishCache';
$conf['page_cache_invoke_hooks'] = FALSE;

ワニスモジュール構成ページのスクリーンショット: enter image description here

パフォーマンスページのスクリーンショット:

enter image description here

次に、自分のサイトを閲覧します。 (匿名として)、さまざまなページを繰り返し更新します。ワニスのチェック統計

$ varnishtop

enter image description here

明らかにそれはリクエストを受信して​​いない、何もキャッシュしていない。

http://www.isvarnishworking.com/ のサイトも確認してください。Vanishがサイトで作業していないことを示しています。

enter image description here


何が問題なのですか?

助けてくれてありがとう

3
gilzero

デフォルトでは、Varnishはポート80で動作していません(この場合、Apacheがそのポートを使用しているため、これも動作しません)。 Apacheを設定して別のポートをリッスンし、そのポートをVarnishのバックエンド設定に使用する必要があります。また、ポート80をリッスンするようにVarnishを構成する必要があります。

デバッグするには、Varnishが現在どのポートをリッスンしているかを調べて、そのポートを使用して参照すると、varnishtopにトラフィックが表示されます。

私がワニス設定で漠然としている理由は、/ etc/sysconfig/varnishからスタートアップデフォルトを読み込むCentOSでのみワニスを使用したためです-Ubuntuを使用しているため、デフォルト設定がどこにあるかを調べる必要がありますシステムに保持されます。公正な出発点は、いくつかの手掛かりを与えるかもしれない/etc/init.d/varnishdスクリプトかもしれません。

3
kekkis