linux - PHP应用程序可以在Windows服务器上运行,但不能在Linux服务器上运行,为什么?

标签 linux php

我有一个 PHP Web 应用程序。该应用程序可以在 Windows 服务器上运行,但不能在 Linux 服务器上运行。我认为这是关于php.ini或文件权限。造成这种情况的其他原因可能是什么?什么必须是基本的php.ini这种情况的配置?

最佳答案

永远不要问“还有什么其他原因”。我们不是这里的天气预报员。我们是程序员。我们有工具可以确定我们现在遇到的具体问题。

您唯一需要做的就是让 PHP 告诉您,问题是什么。

最简单的方法是将这些行放入配置文件中,

ini_set('display_errors',1);
error_reporting(E_ALL);

看看你的应用会说什么。它可以是权限或php.ini。一切都会被告知。
很容易,是吗? ;)

如果这些魔法线没有帮助,还有其他几种方法,手册中有一个很好的手册:http://php.net/manual/en/configuration.changes.php

当您的服务器公开时,不要忘记将这些行更改为

ini_set('display_errors',0);
ini_set('log_errors',1);
error_reporting(E_ALL);

并在错误日志中查看错误消息,而不是将其透露给可能的黑客和无辜用户。

关于linux - PHP应用程序可以在Windows服务器上运行,但不能在Linux服务器上运行,为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2911760/

相关文章:

php - 如何在 symfony 的开发和生产版本中禁用 HTTPS 或更改为 HTTP?

linux - 如何从特定用户名查找在特定日期运行的命令

c++ - GTK 中的系统模式对话框

php - ZF2 - 基于完整路径在 View 中显示图像

php - mysql_fetch_assoc - 不显示结果

php - 我接下来会发生什么?

linux - 为不同版本的 Ubuntu 管理共享库

java - 从 Windows (Java) 连接到 Linux 服务器

linux - 如果只允许使用 ssh key ,如何避免出现 ssh 用户名提示

php - Laravel 使用相同的值更新 mysql 字段