HAProxy 下载 PHP 文件而不是显示在浏览器中

HAProxy 下载 PHP 文件而不是显示在浏览器中

我在 Docker 上运行 nginx 和 php-fpm。使用我的 Docker 系统的主机名 (docker1.freekb.net) 时,浏览器中会显示 phpinfo.php 页面,因此我知道我已正确配置 nginx 和 php-fpm 来提供 PHP 页面。以下是 /etc/nginx/conf.d/default.conf 中的服务器块。来自端口 80 上的 nginx 的请求被转发到端口 9000 上的 PHP。

server {
    listen              80;
    server_name         stage.freekb.net;
    root                /var/www/stage;
    index               index.html phpinfo.php;
    location / {
        try_files $uri $uri/ /index.html;
    }
    location ~ \.php$ {
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        fastcgi_pass 0.0.0.0:9000;
        fastcgi_index phpinfo.php;
        include fastcgi_params;
    }
}

我已设置 HAProxy 以将请求转发到 nginx。以下是 /etc/haproxy/haproxy.cfg 中的监听块。当我转到http://haproxy.freekb.net/index.html,显示出了nginx欢迎页面,由此我知道HAProxy能够将请求转发到nginx上。

然而,当我去http://haproxy.freekb.net/phpinfo.php,phpinfo.php 已下载到我的本地 PC。我怀疑这意味着 fastcgi 出了问题。我不确定在使用 HAProxy 时,为了在浏览器中显示 PHP 页面,需要进行哪些更改。

listen nginx
    bind *:80
    mode tcp
    balance roundrobin
    server nginx1 docker1.freekb.net:80 check

答案1

以防别人找到这篇文章,我想分享一下我发现。在进行 nginx/php-fpm 更改后,我没有清除 Web 浏览器的缓存/历史记录。我只需做的就是清除我的网络浏览器历史记录现在我可以在我的

相关内容