使用 VestaCP 在 Ubuntu 服务器上安装和配置清漆缓存

Install and Configure varnish cache on Ubuntu server with VestaCP

我想安装和配置 Varnish Cache 以在 VPS 上正常工作。 vps OS 是 Ubuntu 14.04,我已经安装并使用了 VestaCP。 Apache 和 nginx 都安装在我的 vps 上。

我发现在 vps 上安装清漆缓存没有问题,我的问题是我无法配置它以正常工作。我找到的所有文档都是针对使用 Apache 或 Nginx 的服务器,但 VestaCP 都安装在我的机器上。我需要将 apache 和 nging 都移动到其他一些端口,并将 varnish 移动到端口 80。 所以,我需要有关如何执行此操作的信息。

谢谢大家

首先你需要在你的服务器上安装VestaCP。为此,您需要以根用户身份访问您的服务器,然后键入:

curl -O http://vestacp.com/pub/vst-install.sh

bash vst-install.sh

要安装 Varnish,请键入:

sudo install varnish -y

您必须设置 Varnish,这样它将 运行 在端口 80 上。场景将是这样的:Varnish 在端口 80 上侦听,Nginx 在端口 8082 上侦听,然后 Apache 在端口 8080 上侦听。

Web 请求 = Varnish (80) -> Nginx (8082) -> Apache (8080)

按照以下步骤操作:

  1. 您必须编辑 Varnish 配置文件。该文件位于此目录中:/etc/sysconfig/varnish(或 /etc/varnish/varnish.params)。您可以使用自己喜欢的文本编辑器通过 ftp 进行编辑。

    nano /etc/sysconfig/varnishnano /etc/varnish/varnish.params

  2. 搜索并找到 VARNISH_LISTEN_PORT。将端口号更改为 80.

  3. 向下滚动页面找到 VARNISH_STORAGE_SIZE。将它设置为您想要分配给 Varnish 缓存文件的合理内存量。 (所有缓存的文件将从内存中加载)

  4. 也改 VARNISH_STORAGE="file,${VARNISH_STORAGE_FILE},${VARNISH_STORAGE_SIZE}" 为此:VARNISH_STORAGE="malloc,${VARNISH_STORAGE_SIZE}"

  5. 保存更改并退出文本编辑器。

  6. 配置位于 /etc/varnish/ 的 Varnish 默认 VCL 文件。该 VCL 文件包含告诉清漆在哪里寻找网络服务器内容的配置:/etc/varnish/default.vcl

    nano /etc/varnish/default.vcl

这是你要做的:

change .host ip from 127.0.0.1 to your server public IP
change .port 80 to .port 8082 which where nginx should listening.
uncomment (remove the # symbol) at sub vcl_recv section
add one } symbol at the end of that section

找到以下子 vcl_backend_response 块,并向其添加以下行:

    set beresp.ttl = 10s;
    set beresp.grace = 1h;
  1. 进入/etc/nginx/conf.d/目录,看看有没有你的publicIP的配置文件:

    cd /etc/nginx/conf.d
    ls
    
  2. 编辑该 .conf 文件。将 xxx.xxx.xxx.xxx 替换为您自己的实际 public IP:

    nano xxx.xxx.xxx.xxx.conf
    
  3. 现在将端口 :80 更改为 :8082

  4. 同时编辑位于 /usr/local/vesta/conf/ 的 vesta.conf 文件。使用你最喜欢的文本编辑器,或者在我的情况下我使用 Nano:

    nano /usr/local/vesta/conf/vesta.conf
    

将 PROXY_PORT 从 80 更改为 8082

  1. 为位于 /home/user/conf/web 的每个 Vesta CP 用户编辑 nginx.conf 文件。如果您有多个 Vesta CP 用户,则此步骤效率不高,因为您必须对他们全部进行编辑。在我的示例中,我将为用户 admin:

    编辑 nginx.conf 文件
    nano /home/admin/conf/web/nginx.conf
    

再次,在侦听行将端口 80 更改为 8082。

  1. 打开您最喜欢的网络浏览器,以管理员身份登录到您的 Vesta CP 仪表板,然后单击页面顶部的“防火墙”菜单。 12.1.编辑防火墙的 /WEB 部分 12.2.现在在端口字段中输入 8082,然后点击绿色的保存按钮。

  2. 在你运行测试之前,你必须先重启Nginx并启动Varnish缓存服务器:

    service nginx restart
    service varnish start
    

我遵循了此页面上的说明: http://www.servermom.org/varnish-cache-vesta-cp/2564/ http://www.servermom.org/vestacp-configuration-varnish-cache/2580/

您可以通过更改“/etc/default/varnish”中的“-a”选项来配置 Ubuntu 上的 Varnish 端口。

有关更多选项,请参阅:https://www.varnish-cache.org/docs/4.0/reference/varnishd.html#http-accelerator-daemon

varnish转发到的后端系统可以在'/etc/varnish/default.vcl'中配置。