首页 文章

为什么MAMP不显示错误?

提问于
浏览
41

好吧,这变得非常令人沮丧 . MAMP用于显示错误但随后停止 . 我决定重新安装它,因为我无法弄明白 . 我检查我的PHP版本,运行5.4.4并转到该文件夹并将php.ini更改为:

error_reporting  =  E_ALL
display_errors = On

仍然没有错误显示 . 我浏览所有文件夹并更改所有php.ini文件,以防万一 . 没有 . 我修复了强制错误并转储 phpinfo() ,检查错误部分并且display_errors为Off . 我勒个去 .

我将 error_reporting(E_ALL); ini_set('display_errors', 'on'); 放在PHP文件的开头,然后再放回 phpinfo() . 本地值现在为On,master仍为Off . 强制PHP错误,仍然得到服务器错误而不是PHP错误 .

有人有任何见解吗?我在某些代码中的某个地方有一个bug而无法找到它,会喜欢PHP告诉我 .

10 回答

  • 1

    MAMP为服务器,客户端等设置了几个不同的 php.ini 文件 . 检入 phpinfo() 实际上是 php.ini . 看起来你正在编辑错误的 .

  • 23

    MAMP上有两个 php.ini 文件 . 您应该更改两个 php.ini 文件 .

    • Applications/MAMP/bin/php/'php version you are using(php5.5.10)'/conf/php.ini

    • Applications/MAMP/conf/php/'php version you are using(php5.5.10)'/conf/php.ini

    然后改变:

    display_errors = Off
    

    至:

    display_errors = On
    
  • 7

    如果您正在使用MAMP PRO,则必须在UI界面中启用错误处理(PHP),该界面应包含至少两个主要选项:“显示启动错误”并将输出设置为“收件人:显示” .

    Display startup errors 选项相当于 display_startup_errors (在PHP中)和 To: Displaydisplay_errors .

    见下文:

    MAMP PRO - Error handling

  • 0

    更改 php.ini 文件中的设置 . 该文件位于 MAMP > conf > php5 > php.ini

    寻找 display_errors = Off 并改为 display_errors = On

    之后,您需要重新启动Apache和MySQL服务器才能使更改生效 .

  • 1

    MAMP PRO用户可以访问UI中的PHP选项卡,并确保选中Log Errors:to screen:screencast

  • 0

    如果您使用的是MAMP版本3.2.2,那么您只需要更改一个php.ini文件:

    Mac: Applications/MAMP/conf/'(php7.0.9)'/php.ini

    Windows: C:\MAMP\conf\PHP Version you use'(php7.0.9)'\php.ini

    我知道这是一个旧帖子,但是MAMP不断改变他们的文件配置,所以我希望这会有所帮助 .

  • 3

    对于较新版本的MAMP,配置文件存储在 Appliations/MAMP/bin/php/[php version]/conf 中 .

    安德鲁纳吉用他的答案向我指出了正确的方向,但对于我安装的MAMP来说并不完全正确 . 为什么他们不同,我不知道,但我们在这里 .

    如果有人被卡住,最简单的方法是在应用程序的索引文件中只查看 <?php echo phpinfo(); ?> 并查找加载的 php.ini 目录 .

  • 2

    这是2018年对此问题的更新 . 首先,我遇到了同样的麻烦并找到了这个帖子 . 我使用了phpinfo()并找到了php.ini文件的另一个位置 . 这是路径(我在Mac上工作):

    /Applications/MAMP/bin/php/[php version]/conf/php.ini
    
    /Applications/MAMP/conf/php/[php version]/php.ini
    

    和......

    /Library/Application Support/appsolute/MAMP PRO/conf/php.ini
    

    phpinfo()页面列出了php.ini的两个来源:

    • Configuration File (php.ini) Path
      / Applications / MAMP / bin / php / [php version] / conf

    • Loaded Configuration File / Library / Application Support / appolute / MAMP PRO / conf / php.ini

    我最后更改了所有三个,将 error_reporting(E_ALL) 添加到某些页面,重新启动服务器(甚至重新启动了计算机)仍然无法显示任何错误消息 .

    我不知道从哪里开始 . 有任何想法吗?

  • 15

    还有一个模板保存在 php.ini 的MAMP中 . 转到 File > Edit Template > PHP > Your Version .

  • 66

    在MAMP 3.2.0和PHP 7上,您需要定位 php.ini-production 并将值更改为 Production Value = On

相关问题