シナリオ: 多数の異なるサブドメインを持つ Apache/Varnish セットアップがあります。すべてのサブドメインには、サイト対応の独自の VirtualHost ファイルがありますが、すべて同じ Wordpress インストールで実行されます。1 つを除いて: Sqlbuddy (Web ベースの SQL 管理) のスタンドアロン サイトである sqlbuddy.mydomain.com。
問題: Varnish は、sqlbuddy を除くすべてのサイトで問題なく動作します。まったくアクセスできず、「エラー 503 バックエンドのフェッチに失敗しました」というエラーが表示されることがあります。アクセスできる場合もありますが、ログインしようとすると同じエラーが発生します。ログインしようとしても何も起こらないこともあります。ログインは成功しますが、何かをしようとするとエラーが発生することがあります。
私が望む/試したこと: このサイトはキャッシュを必要としないので、Varnish に完全に無視させたい。
これは私が試したことです(vcl_recvの上部にあります):
if (req.http.host == "sqlbuddy.mydomain.com" && req.url == "/") {
return (pass);
}
それのさまざまなバリエーション(req.url、return(pip);などなし)ですが、それでもエラーが発生します。また、Varnish をバイパスするために VirtualHost を別のポートに配置しようとしましたが、sqlbuddy はそれをリッスンしないようです。
それ以外の場合は、次の VCL を使用します: https://gist.github.com/nadirlc/46987b42447cf8e3be79 で、VirtualHosts は 127.0.0.1:8008 をリッスンします。
Varnishでそれを行う他の方法はありますか?
さらに情報が必要な場合、または明らかな情報を見逃している場合はお知らせください。ワニスに関しては、私は正確には最高ではありません。