سؤال

لقد حاولت الآن لساعات الحصول على Xdebug (2.0.5 مترجمة من المصدر) للعمل على MacBook OS X مع Netbeans 6.8. لقد قمت بتثبيت MAMP وتشغيل برنامج اختبار PHP (5.2) صغيرا معه، لا مشكلة. ولكن عندما أحاول تصحيح الأخطاء، أحصل على هذا النص في NetBeans: "انتظار الاتصال (NetBeans-Xdebug)" ولا يحدث شيء أكثر. تم تكوين NetBeans ل Port Debugger 9000. لا zend التحسين في MAMP.

لقد اتبعت هذا: http://netbeans.org/kb/docs/php/configure-php-environment-mac-os.html#installenablexdebug.و http://www.xdebug.org/docs/install.و http://forums.netbeans.org/topic1513-0-asc-0.html إلخ

هنا جزء من بلدي php.ini

[XDebug]

;zend_extension="/Applications/MAMP/bin/php5/lib/php/extensions/no-debug-non-zts-20060613/xdebug.so"

;[Zend]

;zend_optimizer.optimization_level=15

;zend_extension_manager.optimizer=/Applications/MAMP/bin/php5/zend/lib/Optimizer-3.3.9

;zend_optimizer.version=3.3.9

; Xdebug config for Mac OS X and NetBeans IDE

zend_extension=/Applications/MAMP/bin/php5/lib/php/extensions/no-debug-non-zts-20060613/xdebug.so

xdebug.remote_enable=1

xdebug.remote_handler=dbgp

xdebug.remote_mode=req

xdebug.remote_host=localhost

xdebug.remote_port=9000

xdebug.idekey="netbeans-xdebug"

لقد قرأت الكثير من إرشادات التثبيت وما إلى ذلك، وإظهار Phpinfo أن XDebug مثبت موافق مثل v.2.11 (ينظر عبر "صفحة بدء تشغيل" في MAMP). ومع ذلك، عندما أحاول في محطة PHP -MI لا أرى XDebug المدرجة. أحسب أخيرا أن php.ini تتم قراءتها من / إلخ، لذا قمت بنسخ MAMP PHP.INI إلى PHP.INI هناك، وبالتالي إضافة معلومات XDEBug.SE، LocalHost، المنفذ 9000 إلخ إلى هناك. بعد ذلك، يتم سرد Xdebug عندما أفعل PHP -M أيضا، لكنني ما زلت أحصل على مشكلة NetBeans. غريبة بما فيه الكفاية PHP -I يظهر الإصدار 5.2.10، وليس 5.2.11 على النحو الوارد أعلاه!

حاولت أيضا هذا، مضيفا "NetBeans-Xdebug" ل IDEKEY: لماذا لا يقوم XDebug بإنشاء اتصال مع Netbeans؟

كيف تعرف أن php_info () يبدو أنه يجد ملف php.ini ضمن ../ mamp / ... وليس عند القيام PMP -M عند قراءة من / إلخ؟

كيف يمكنني الحصول على PHP لإيجاد ملف INI دائما تحت MAMP حتى لا أضطر إلى استخدام ملفتين PHP.INI إلى ET Phpinfo () و PHP -M للعمل؟

كيف يمكنني حل مشكلة NetBeans الآن بعد أن تم تثبيت XDebug بشكل صحيح ولكن لا يزال لا يعمل في NetBeans؟ شيء مع هذه الحاجة إلى php.ini المزدوج؟ هل يمكنني جمع خاطئ Xdebug، كيف أعرف؟ شيء مع إصدارات PHP في XDEBUG / PHP؟ كيف تفحص؟

هنا جزء من النتيجة من PHP -I:

xdebug

xdebug support => enabled
Version => 2.0.4

Supported protocols => Revision
DBGp - Common DeBuGger Protocol => $Revision: 1.125.2.6 $
GDB - GNU Debugger protocol => $Revision: 1.87 $
PHP3 - PHP 3 Debugger protocol => $Revision: 1.22 $

Directive => Local Value => Master Value
xdebug.auto_trace => Off => Off
xdebug.collect_includes => On => On
xdebug.collect_params => 0 => 0
xdebug.collect_return => Off => Off
xdebug.collect_vars => Off => Off
xdebug.default_enable => On => On
xdebug.dump.COOKIE => no value => no value
xdebug.dump.ENV => no value => no value
xdebug.dump.FILES => no value => no value
xdebug.dump.GET => no value => no value
xdebug.dump.POST => no value => no value
xdebug.dump.REQUEST => no value => no value
xdebug.dump.SERVER => no value => no value
xdebug.dump.SESSION => no value => no value
xdebug.dump_globals => On => On
xdebug.dump_once => On => On
xdebug.dump_undefined => Off => Off
xdebug.extended_info => On => On
xdebug.idekey => pettermagnusson => netbeans-xdebug
xdebug.manual_url => http://www.php.net => http://www.php.net
xdebug.max_nesting_level => 100 => 100
xdebug.profiler_aggregate => Off => Off
xdebug.profiler_append => Off => Off
xdebug.profiler_enable => Off => Off
xdebug.profiler_enable_trigger => Off => Off
xdebug.profiler_output_dir => /tmp => /tmp
xdebug.profiler_output_name => cachegrind.out.%p => cachegrind.out.%p
xdebug.remote_autostart => Off => Off
xdebug.remote_enable => On => On
xdebug.remote_handler => dbgp => dbgp
xdebug.remote_host => 127.0.0.1 => 127.0.0.1
xdebug.remote_log => /tmp/xdebug.log => /tmp/xdebug.log
xdebug.remote_mode => req => req
xdebug.remote_port => 9000 => 9000
xdebug.show_exception_trace => Off => Off
xdebug.show_local_vars => Off => Off
xdebug.show_mem_delta => Off => Off
xdebug.trace_format => 0 => 0
xdebug.trace_options => 0 => 0
xdebug.trace_output_dir => /tmp => /tmp
xdebug.trace_output_name => trace.%c => trace.%c
xdebug.var_display_max_children => 128 => 128
xdebug.var_display_max_data => 512 => 512
xdebug.var_display_max_depth => 3 => 3

RGDS PM

هل كانت مفيدة؟

المحلول 2

لقد قمت بتنزيل Xdebug.so الخطأ من Komodo وأشياء بطريقة أو بأخرى أيضا لم يكن بناءي جيدا. تحميلها مرة أخرى والآن على ما يرام. نجاح باهر، هذا استغرق الأمر عدة ساعات، ولا يمكن لأحد أن يساعد كذلك! /مساء

نصائح أخرى

How come PHP_INFO() seemed to find my PHP.INI file under ../MAMP/... and not when doing PMP -m when it is read from /etc ?

phpinfo() يستخدم PHP Mamp PHP Binary، في حين أن CLI يستخدم نظام التشغيل الخاص بك.

How can I get PHP to always find the INI file under MAMP so I dont have to use two PHP.INI files to et PHPINFO() and PHP -m to work?

اترك نظام التشغيل PHP لا يمسحه حتى لا تواجه مشكلة في رفع مستوى المشكلة وضبط واحد مع MAMP كما تحتاج.

How can I resolve the NetBeans problem now that xDebug seems to be installed correctly but still not working in NetBeans? Something with this need for dual php.ini? Could I have compiled xdebug wrong, how to know? Something with php versions in xdebug / php? How to check?

قم بتنزيل أحدث إصدار من MAMM الذي يتضمن تمديد XDebug Compounted وإضافة هذا إلى php.ini.

zend_extension="/Applications/MAMP/bin/php/php5.3.6/lib/php/extensions/no-debug-non-zts-20090626/xdebug.so"
xdebug.remote_host=localhost
xdebug.remote_port=9001
xdebug.remote_enable=1
xdebug.idekey="netbeans-xdebug"
xdebug.remote_log="/Applications/MAMP/logs/xdebug.log"

يمكنني استخدام المنفذ 9001 كما يبدو OSX مثل الافتراضي.

راجعت وإعادة فحص جميع الإعدادات وإعداد التعليمات وما زالت بدا أن Xdebug لم ينجح. في النهاية، قمت بإعادة تشغيل جهاز Mac الخاص بي وبدأ تشغيله بطريقة سحرية. ربما هذا سوف يساعد شخص ما في نفس الموقف مثلي.

هذا هو ما يعمل بالنسبة لي

brew install php55-xdebug

  • الاستيلاء على مسار INI، ثم لصق ما يلي إلى آخر
    php -i | grep 'Configuration File'
    vim /usr/local/etc/php/5.5/php.ini

  • أضف ما يلي

    zend_extension = "/ usr / lib / php / extensions / no-debug-non-zts-20100525 / xdebug.so"

    xdebug.default_enable = 1.
    XDEBUG.REMOTE_ENABLE = 1.
    xdebug.remote_handler = dbgp.
    xdebug.remote_host = localhost.
    XDEBUG.REMOTE_PORT = 9001.
    XDEBUG.REMOTE_AUTOSTARTART = 1.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top