【问题标题】:How to get php5-fpm to work on LEMP (Nginx, Debian 8 and mariaDB)?如何让 php5-fpm 在 LEMP(Nginx、Debian 8 和 mariaDB)上工作?
【发布时间】:2023-06-10 01:40:02
【问题描述】:

我试图在我的一台计算机上设置一个简单的 LEMP 服务器,LEMP 是 NginxPhp5-fpm >玛丽亚数据库。出于多种原因,我选择了 Debian 8 (Jesse)。我以前设置过 LAMP 服务器,但不是这个。我要做的就是使用上述服务器组合离线测试一些 php 脚本。

任何人都知道与 php5-fpm 一起使用的 Nginx-Debian 8 示例吗?

我已经浏览了超过半打指南、Nginx wiki 中的示例、文档等,我什至无法让简单的 php 测试文件正常工作。我得到的只是“您要保存还是打开文件”。 我有欢迎使用 Nginx'。但不是 PHP!

那里有几种配置 - 用于 Ubuntu、Centos 和我目前所说的用于 Debian、带有 php5-fpm 和 MariaDB 的 (Jesse) - 这正是我想要的 - 但它不起作用。 我已经尝试过使用和不使用虚拟主机,使用 unix 套接字或 TCP 套接字,将 php.ini 文件路径设置为 0 和 1; 我什至完全重新加载了 Debian Jesse 并重新开始。

似乎还有一些关于必须做“某事?”的争论。让 Nginx 识别来自脚本的 Php POST 调用,但这只是我遇到过的一次。

尝试在 Linux Mint 17 上安装 LEMP 服务器会更容易吗?我比 Debian 更熟悉? 还是 Centos 6 或 7 ???

【问题讨论】:

  • 欢迎来到 Stack Overflow。恭喜您发布了格式合理且完整的问题。我已经突出显示了一些关键字,这是通过用 2 个星号包围它们来完成的。

标签: nginx mariadb


【解决方案1】:

升级到 Debian 8 (Jesse) 并进行一些重新配置后,我遇到了同样的问题。就我而言,解决方案是在下面添加“fastcgi_param”行:

location ~ \.php$ {
  try_files $uri =404;
  fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
  fastcgi_split_path_info ^(.+\.php)(/.+)$;
  include fastcgi_params;
  # Intercepting errors will cause PHP errors to appear in Nginx logs
  fastcgi_intercept_errors on;
  fastcgi_index index.php;
  fastcgi_pass unix:/var/run/php5-fpm.sock;
}

/托马斯

【讨论】: