使用 nodeJS 设置 Varnish 缓存

使用 nodeJS 设置 Varnish 缓存

目标:我正在尝试在我的 Ubuntu 网络服务器上设置 varnish。我已阅读文档和入门资料,看起来并不太复杂,但是,我认为我的网站从未被它缓存过。

我正在运行一个 nodeJS 服务器(使用 express)。该应用程序监听端口 3000,我的 Ubuntu 服务器使用以下命令将请求从端口 80 转发到端口 3000:

sudo iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3000

在我的/etc/default/varnish配置中我取消注释并编辑了这个块:

## Alternative 2, Configuration with VCL
#
# Listen on port 6081, administration on localhost:6082, and forward to
# one content server selected by the vcl file, based on the request.  Use a 1GB
# fixed-size cache file.
#
DAEMON_OPTS="-a :80 \
             -T localhost:6082 \
             -f /etc/varnish/default.vcl \
             -S /etc/varnish/secret \
             -s malloc,256m"

说实话,我不确定应该将其设置为什么,除了文档中说的更改为-a :6082。localhost-a :80部分让我感到困惑,我不确定它是试图引用 apache 还是本地系统?

此外,当有人访问我的网站时,他们是否仍然会访问端口 80,然后被转发到端口 3000,还是由于我的 iptables 规则,他们会自动访问端口 3000。有没有确定的方法可以判断 varnish 是否设置正确?它会发送标头或其他内容吗?

我的专业是 Web 开发,我所知道的关于 Linux 的东西都是自学的,用于服务器操作。我非常渴望学习,所以如果您需要我提供更多信息,请告诉我。

相关内容