【问题标题】:Install and Configure varnish cache on Ubuntu server with VestaCP使用 VestaCP 在 Ubuntu 服务器上安装和配置清漆缓存
【发布时间】:2016-03-13 08:29:03
【问题描述】:

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

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

谢谢大家。

【问题讨论】:

    标签: apache ubuntu caching nginx varnish


    【解决方案1】:

    您可以通过更改“/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'中配置。

    【讨论】:

      【解决方案2】:

      首先你需要在你的服务器上安装 VestaCP。为此,您需要 root 访问您的服务器,然后键入:

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

      bash vst-install.sh
      

      要安装清漆,请输入:

      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。将其设置为您想要分配的合理数量的 RAM,作为​​ Varnish 制作的缓存文件的存储空间。 (所有缓存的文件都会从内存中加载)

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

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

      6. 配置位于 /etc/varnish/ 中的 Varnish 默认 VCL 文件。该 VCL 文件包含用于告诉 varnish 在哪里查找网络服务器内容的配置:/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/目录,查看是否有你的公网IP的配置文件:

        cd /etc/nginx/conf.d
        ls
        
      2. 编辑该 .conf 文件。将 xxx.xxx.xxx.xxx 替换为自己的实际公网 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 Cache 服务器:

        service nginx restart
        service varnish start
        

      我按照此页面上的说明进行操作: http://www.servermom.org/varnish-cache-vesta-cp/2564/ http://www.servermom.org/vestacp-configuration-varnish-cache/2580/

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-02-28
        • 2023-03-23
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多