You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu20.04部署Magento2遇nginx duplicate upstream 'fastcgi_backend'错误求助

解决Nginx配置中"duplicate upstream 'fastcgi_backend'"错误的步骤

问题原因

错误提示说明fastcgi_backend这个上游服务器定义在Nginx配置中重复出现——你的/etc/nginx/sites-enabled/magento.conf里定义了该上游,同时其他已加载的Nginx配置文件(比如主配置nginx.conf、默认站点配置default.conf)中也存在相同的定义。

解决步骤

1. 定位重复定义的位置

执行以下命令搜索所有Nginx配置文件中fastcgi_backend的定义:

grep -r "upstream fastcgi_backend" /etc/nginx/

该命令会列出所有包含该上游定义的文件路径。

2. 删除重复的定义

  • 如果搜索结果显示除了magento.conf外,其他文件(比如/etc/nginx/nginx.conf或/etc/nginx/sites-enabled/default)也有该定义,删除magento.conf开头的upstream块,修改后的magento.conf内容如下:
server { 
    server_name open-server.ru; 
    listen 80; 
    set $MAGE_ROOT /opt/magento2; 
    set $MAGE_MODE developer; # or production
    access_log /var/log/nginx/magento2-access.log; 
    error_log /var/log/nginx/magento2-error.log;
    include /opt/magento2/nginx.conf.sample; 
}
  • 如果只有magento.conf里有该定义,检查是否在文件中重复写了多次(比如误复制),删除多余的即可。

3. 验证配置并重启Nginx

执行配置测试命令确认错误修复:

nginx -t

如果输出nginx: configuration file /etc/nginx/nginx.conf test is successful,则重启Nginx使配置生效:

systemctl restart nginx

4. 额外验证(确保Magento运行正常)

  • 检查PHP-FPM socket文件是否存在:
ls -l /run/php/php8.1-fpm.sock

如果文件不存在,确认PHP 8.1-FPM服务是否正常运行:

systemctl status php8.1-fpm
  • 访问你的Magento站点(open-server.ru),确认页面能正常加载。

内容的提问来源于stack exchange,提问作者Alexander Pashkov

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.11 23:20:38