簡體   English   中英

Linux Varnish緩存服務器-Guru Meditation 503

[英]Linux Varnish Cache Server - Guru Meditation 503

我在Linux服務器(Varnish緩存)中有magento網站,某些產品詳細信息頁面顯示錯誤為

錯誤503后端獲取失敗,大師冥想:XID:98757

我的網站IP是52.163.xxx.xx

請找到以下詳細信息,並幫助我解決此問題。

在/ etc /默認/清漆

DAEMON_OPTS="-a :8080 \
             -T localhost:6082 \
             -f /etc/varnish/default.vcl \
             -S /etc/varnish/secret \
             -s malloc,256m"

/etc/varnish/default.vcl

backend default{
    .host   = "127.0.0.1";
    .port   = "8080";
}

sudo服務清漆重啟

  • 正在停止HTTP加速器清漆沒有發現/ usr / sbin / varnishd正在運行; 沒有人被殺。 [失敗]
  • 啟動HTTP加速器上漆[fail] bind():地址已在使用中bind():地址已在使用中錯誤:無法打開(任何)接受套接字。

據我了解,您是在同一台Linux機器上運行清漆和后端Web服務器(例如nginx或apache),對嗎?

首先,嘗試運行以下命令:

sudo netstat -anp | grep LISTEN | grep 8080

並查看端口8080和哪個IP上綁定了什么進程。

問題的第一部分表明清漆正在運行,只是無法連接到后端。 但是第二部分告訴我您無法開始上光油。 因此,請說明清楚,並可能附加上面命令的輸出。

讓我們繼續第二部分,即清漆無法啟動。

我想您有運​​行在8080上的后端服務器,無論是nginx,apache還是其他。 您的清漆后端配置畢竟可以確認。

檢查Web服務器是否綁定在127.0.0.1上,而不是綁定在0.0.0.0上,以不允許公共流量直接連接到后端Web服務器。

在這種情況下,您必須將清漆的監聽ip:port更改為非沖突組合。

您可以:

  • 將端口更改為8080,例如80
  • 如果您需要公開8080,請將后端Web服務器的端口更改為其他端口
  • 仔細檢查您的后端Web服務器僅在localhost上偵聽並將varnish綁定到您的公共IP而不是0.0.0.0(默認值,表示所有計算機的IP)

您可以通過將主清漆配置更改為以下方法來做最后一個選擇:

DAEMON_OPTS="-a 52.163.xxx.xx:8080 \
             -T localhost:6082 \
             -f /etc/varnish/default.vcl \
             -S /etc/varnish/secret \
             -s malloc,256m"

這種情況有一個重要的缺點。 如果您以某種方式使用新的公共IP,則也必須在主清漆配置中對其進行更改。 如果您可以將其編碼為自動化配方,那應該沒問題。 但是,如果您手動進行管理,請確保您確實有很好的文檔記錄實踐,否則將來會發現幽靈漏洞。 :)

一個錯誤是Varnish和后端服務器都在同一端口8080上運行。 您有2個解決方案:

  1. 最簡單明了。 調整Varnish DAEMON_OPTS以偵聽端口80

  2. 如果您使Varnish和后端服務器在不同的接口上偵聽,它仍然可以在相同的端口上工作:

    • Varnish通常會在外部接口上監聽。 因此,將您的Varnish偵聽參數調整為綁定到特定IP: DAEMON_OPTS="-a 52.163.xxx.xx:8080 ...
    • 綁定您的后端服務器(Apache,Nginx等),僅在回送接口127.0.0.1上進行偵聽。

您的VCL是“空的”,您應該為Magento使用相應的插件,該插件將通過為您生成正確的VCL文件來確保Varnish緩存內容:

  • Magento 1.x:Turpentine插件
  • Magento 2.x:..能夠從您的Magento安裝的管理后端生成VCL。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM