अनदेखा में PHP प्लगइन के साथ एक ड्रूपल वेबसाइट डीबग करने का प्रयास कर रहा है (phpStorm में समान होगा)।इंटेलिजे, पीएचस्टॉर्म: एक्सडीबीयूजी के साथ डीबगिंग XDEBUG_SESSION कुकी
क्रोम ब्राउज़र एक स्थानीय होस्ट उर्फ mydomain.local
और XDebug हेल्पर एक्सटेंशन स्थापित किया और डीबग करने के लिए सेट कर दिया जाता की ओर इशारा करते:
मैं निम्नलिखित सेटअप है। कुकीज़ के तहत डेवलपर टूल्स में मैं देख सकता हूं कि XDEBUG_SESSION
कुकी PHPSTORM पर सेट है।
मैं xdebug निम्नलिखित सेटिंग्स का उपयोग प्लगइन के साथ php कॉन्फ़िगर किया है:
xdebug.extended_info = 1
xdebug.idekey = "PHPSTORM"
xdebug.max_nesting_level = 500
xdebug.remote_autostart = 1
xdebug.remote_connect_back = 0
xdebug.remote_enable = 1
xdebug.remote_handler = dbgp
xdebug.remote_host = 127.0.0.1
xdebug.remote_mode = req
xdebug.remote_port = 9000
इंटेलीजे में मैं सेटअप एक सर्वर मुझे लगता है कि सर्वर का उपयोग कर रहा हूँ और इदे कुंजी निर्धारित किया है mydomain.local
करने और चलाने के विन्यास में ओर इशारा करते हुए PHPSTORM
पर।
अगर मैं PHP स्क्रिप्ट में पहली पंक्ति में तोड़ सक्षम करें, फिर डिबगर तुरंत index.php
अंदर पहले भंगुर स्थान पर टूट जाता है:
अब मुद्दा यह है। अगर मैं उस विकल्प को अक्षम करता हूं, तो मुझे एक चेतावनी मिलती है कि कोई ब्रेकपॉइंट मारा नहीं गया था, भले ही मेरे पास ब्रेक पॉइंट सेट है और मुझे यकीन है कि कोड निष्पादित किया जा रहा है। ?XDEBUG_SESSION_START=PHPSTORM
तो मेरे सारे breakpoints ठीक से IntelliJ में breaked किया जा रहा है: अगर मैं स्पष्ट रूप से निम्नलिखित क्वेरी पैरामीटर संलग्न के साथ एक URL का उपयोग
Debug session was finished without being paused
It may be caused by path mappings misconfiguration or not synchronized
local and remote projects.
To figure out the problem check path mappings configuration for
'mydomain.local' server at PHP|Servers or enable Break at first line in
PHP scripts option (from Run menu).
अब: चेतावनी है कि मैं देख रहा हूँ इस तरह दिखता है।
प्रश्न:XDEBUG_SESSION
कुकी को अनदेखा क्यों किया जा रहा है?
अद्यतन:
PHP 7.0.8-0ubuntu0.16.04.3 (cli) (NTS)
Copyright (c) 1997-2016 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2016 Zend Technologies
with Zend OPcache v7.0.8-0ubuntu0.16.04.3, Copyright (c) 1999-2016,
by Zend Technologies
with Xdebug v2.4.0, Copyright (c) 2002-2016, by Derick Rethans
और मेरे अपाचे आभासी मेजबान विन्यास:
<VirtualHost *:80>
DocumentRoot /var/www/html/mydomain
ServerName mydomain.local
<Directory /var/www/html/mydomain>
Options Indexes FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
ErrorLog /var/log/apache2/mydomain.log
</VirtualHost>
अद्यतन 2:php -v
से मेरे PHP और XDebug संस्करण उत्पादन जोड़ा मैं एक php एक्सटेंशन स्थापित किया गया है जिसे fpm
कहा जाता है। मुझे पूरा यकीन नहीं है कि यह क्यों स्थापित है या मुझे इसकी आवश्यकता है। मुझे लगता है कि यह स्वचालित रूप से PHP के साथ स्थापित किया गया था। क्या यह दखल दे सकता है?
क्या आपने 'remote_autostart' को 0 पर सेट करने का प्रयास किया है? यदि आप कुकी सेट करके डिबगिंग सक्षम करना चाहते हैं तो यह विकल्प 1 पर सेट करना अनावश्यक लगता है। –
इसके अलावा, आपका xdebug संस्करण क्या है? –
जांचें कि क्या आपकी वेबसाइट कुछ रीडायरेक्ट करता है, जो कि आप कहां से उम्मीद कर रहे हैं तो इसे तोड़ने का कारण हो सकता है। हालांकि ऐसा लगता है कि यह मामला नहीं है क्योंकि जब आप GET पैरामीटर जोड़ते हैं तो यह काम करता है। – user5542121