当我开始我的最新项目时,我学会了如何使用xdebug扩展,并从此一直使用它。现在我准备启动服务器并使用此项目进行生产,并且我的网站无法正常工作。前端页面似乎也起作用,这也是基于php的,但后端端点查询数据库并将一些数据返回到前端总是返回500状态码。所以我附加了xdebug并找出如何远程运行它,并且所有页面都开始工作,而不需要更改任何代码。我进入php.ini文件并关闭它,页面继续工作。由于这是一个AWS EC2服务器,因此我删除了该实例并创建了一个运行我编写的用于安装所有软件的相同初始化脚本的新实例,并得到完全相同的问题。直到我按照xdebug安装说明并重新启动apache2,服务器才工作。即使在我通过php.ini文件取消xdebug扩展时,代码仍然可以继续工作。即使在系统重新启动后,它仍然继续工作,因此无论什么问题得到解决似乎都是永久性的。只有在使用Xdebug扩展时,代码才有效
构建和附加xdebug扩展以及重新启动Apache2的操作对LAMP堆栈会产生什么影响,即使在关闭扩展之后,它也能使我的代码正常工作?我的服务器是使用脚本构建的,脚本运行各种apt-get install命令,但没有提供二进制文件,因为它们都是社区提供的程序。像发条一样,每次重建机器时都会中断,直到我应用扩展。如果必须的话,我可以将它自动化到我的构建脚本中,但是这让我有点疯狂,我不明白发生了什么。
看看错误日志。在默认情况下,Ubuntu位于'/ var/log/apache2/error.log',你需要root来访问它。您可以运行如下命令:'sudo tail -f/var/log/apache2/error.log'将其打开并保持打开状态以进行监视。然后重新加载错误页面几次,看看出现了什么。我想下面,你正在调用一些内部xdebug函数,没有扩展名不存在。这或安装xdebug它覆盖了一些php.ini值的错误,并且错误总是发生,你只是没有看到它。 –
谢谢,对于这个问题以及未来的问题我非常有用。我需要更好地了解Linux服务器上可以使用哪些日志。 –