2

これが私が達成しようとしていることです。ワニスを共有環境で動作させようとしていますが、vcl内のドメインのみがキャッシュされ、残りは単純に渡されるように設定したいと思います。これが私が見ているものです:

include "/etc/varnish/whitelist.vcl";
if (req.http.host !~ vhosts) {
   return(pass);
}


acl vhosts {
"domain.net";
"www.domain.net";
"...";
}

..。

今ワニスはこれが不可能であると私に言います:

Message from VCC-compiler:
Expected CSTR got 'vhosts'
(program line 940), at
('input' Line 11 Pos 30)
if (req.http.host !~ vhosts) {
-----------------------------######---

Running VCC-compiler failed, exit 1

VCL compilation failed

今、私は次のことができることを知っています:

sub vcl_recv {
    if (req.http.host == "domain1.com" || 
        req.http.host == "domain2.com") {
        return(pass);
    }
}

しかし、私は最初のきれいな外観が本当に好きです。何か案は?

4

2 に答える 2

4

残念ながら、HTTP Host ヘッダーに ACL を使用することはできません。クライアントアドレスの照合専用です

于 2012-09-26T21:58:40.873 に答える