nginx php-fpm中的laravel作为docker中的反向代理:我不想在两个容器中都放两组文件

eufgjt7s  于 2023-10-17  发布在  Nginx
关注(0)|答案(1)|浏览(100)

我想我问了一个与this one有90%相似的问题,但我没有看到任何回应,所以我又把它放在这里。
大多数在网上找到的Docker + Nginx + PHP-fpm教程都将同一个代码目录挂载到Nginx和PHP-fpm。
但我不想。我只是想保留PHP-fpm作为响应Nginx请求的反向代理。
所以架构是:

Traffic <-> Nginx (as docker container) <-> php-fpm (as docker container)
  • Nginx作为代理服务器,没有代码。
  • PHP-fpm包含所有REST-API代码(本例中为Laravel),响应Nginx请求。

我可以使用fastcgi_pass将流量从Nginx发送/定向到PHP,但由于Nginx没有代码,它将立即返回404 Not Found
有没有人能成功做到这一点?如果是,配置可以共享吗?
非常感谢你的帮助。

z31licg0

z31licg01#

所有的人谁来自搜索引擎,或寻找一个解决方案。我为此写了一个要点。
https://gist.github.com/alucard001/4fc56ba20b58d9b1e69b5e3dce276f6a
我知道这违反了这里的规则,但我希望这仍然可以被接受,因为我付出了很多努力,使它的工作。
它使用Nginx + PHP(Swoole)而不是PHP-FPM。
谢谢
更新:这个Gist是针对Laravel的。如果您想在其他平台/项目上使用它(例如,Wordpress),请相应地更改您的DockerfileDockerfile_base
您可能需要将图像从php:latest更改为php:8-fpm才能运行非Laravel PHP程序。

相关问题