|
| Issues with PHP 8 with PhpED 19.5 | |
Joined: 27 Nov 2009 |
Posts: 98 |
|
|
|
Posted: Wed Jun 30, 2021 12:15 pm |
|
|
|
|
|
PhpED 19.3 on local Windows PC was working with PHP 7.4 on remote Centos 7, however, having issues after upgrading to PhpED 19.5 and PHP 8.
Linux user "michael" use public keys on the windows PC instead of a password, and user "password_user" uses a password. I am currently logged via putty using michael account and the public key. My windows PC IP is 11.22.33.44 and my server's IP is 44.33.22.11.
I get different results when using using either Linux user michael or password_user as the Tunnel (SSH) account, and even more strange get different results if I delete the michael account from PHPed and then use the password_user account. Potentially, also related to which account is used for the Terminal account, but not sure.
On Run targets dialog, both HTTP and CLI is checked. Starting off both the Terminal Account and Tunnel (SSH) account is both michael which uses keys instead of a password.
Checking php installation in HTTP (web server) mode executes without errors:
.php file extension is associated with PHP
dbg-wizard script was recently updated, file version is 4.2.4201
uploaded dbg-wizard.php to [SFTP:1and1] /testsite/public/
SSL certificate [/O=Digital Signature Trust Co./CN=DST Root CA X3] checked
SSL certificate [/C=US/O=Internet Security Research Group/CN=ISRG Root X1] checked
SSL certificate [/C=US/O=Let's Encrypt/CN=R3] checked
dbg-wizard version is 4.2.4201
client outbound IP=11.22.33.44, another network
platform Linux-glibc-2.17/x86_64, supported
php version 8.0.8, ts: 0, sapi: fpm-fcgi
php.ini file is /etc/php.ini
php extension_dir /usr/lib64/php/modules
document root /var/www/testsite/public
debugger version 10.0.5, enabled
please proceed with [Next >>] button |
But Checking php installation in CLI (console) mode hangs at the "running remote php-cli" step, and the detail tab just repeats for hours.
.php file extension is associated with PHP
dbg-wizard script was recently updated, file version is 4.2.4201
uploaded dbg-wizard.php to [SFTP:1and1] /testsite/public/
running remote php-cli
... hanges...
|
The Details tab:
Connecting to 44.33.22.11.
Connected.
Last login: Wed Jun 30 13:45:38 2021 from c-67-160-8-61.hsd1.wa.comcast.net
-bash-4.2$
-bash-4.2$
-bash-4.2$
... repeats...
|
Clicked Next and skipped and got following error when Checking debugger installation in HTTP (web server) mode:
dbglistener is listening on: all addresses, port: 7869, upnp: 0
SSH tunnel status: successfully established, ok
SSL certificate [/O=Digital Signature Trust Co./CN=DST Root CA X3] checked
SSL certificate [/C=US/O=Internet Security Research Group/CN=ISRG Root X1] checked
SSL certificate [/C=US/O=Let's Encrypt/CN=R3] checked
Error: (-134) debug session did not start (dbg error=-16)
please check php installation, check your AV and firewall software, and make sure that PhpED is allowed to connect web server and send HTTP requests. Also make sure that the IDE (dbglistener.exe) is allowed to accept incoming connections on TCP/7869 port. Also make sure that SSH tunnel for debugger is configured to the server where you're about to run and debug php please re-run this wizard and make sure that everything is entered correctly; if nothing helps, please make screenshots of all of the wizard pages and contact NuSphere support http://shop.nusphere.com/contact_us/
fix the problem(s), then click [<< Back] button and repeat the tests
|
And then when Checking debugger installation in CLI (console) mode, and I get the same hanging for hours when checking php-cli PHP installation.
dbglistener is listening on: all addresses, port: 7869, upnp: 0
SSH tunnel status: successfully established, ok
running remote php-cli
Error: (-102) wizard is cancelled
fix the problem(s), then click [<< Back] button and repeat the tests |
When using another user, I get SSH tunnel errors. Not positive, but appears that PHPed is also sending my michael user to the remote server.
Checking debugger installation in HTTP (web server) mode first shows a SSH tunnel failed error and then has the same error as when using user michael.
dbglistener is listening on: all addresses, port: 7869, upnp: 0
Error: (-102) SSH tunnel failed, last status:failed
SSL certificate [/O=Digital Signature Trust Co./CN=DST Root CA X3] checked
SSL certificate [/C=US/O=Internet Security Research Group/CN=ISRG Root X1] checked
SSL certificate [/C=US/O=Let's Encrypt/CN=R3] checked
Error: (-134) debug session did not start (dbg error=-16)
Make sure that port selected for debugger (7869) is not in-use on your server. Each developer using SSH tunnel for debugger on the same remote host has to select unique port for debugger. Check SSH server logs for possible other reasons for tunnel to failure
please check php installation, check your AV and firewall software, and make sure that PhpED is allowed to connect web server and send HTTP requests. Also make sure that the IDE (dbglistener.exe) is allowed to accept incoming connections on TCP/7869 port. Also make sure that SSH tunnel for debugger is configured to the server where you're about to run and debug php please re-run this wizard and make sure that everything is entered correctly; if nothing helps, please make screenshots of all of the wizard pages and contact NuSphere support http://shop.nusphere.com/contact_us/
fix the problem(s), then click [<< Back] button and repeat the tests |
And similarly checking debugger installation in CLI (console) mode first shows a SSH tunnel failed error and then has the same hanging as when using user michael.
dbglistener is listening on: all addresses, port: 7869, upnp: 0
Error: (-102) SSH tunnel failed, last status:failed
running remote php-cli
Error: (-102) wizard is cancelled
Make sure that port selected for debugger (7869) is not in-use on your server. Each developer using SSH tunnel for debugger on the same remote host has to select unique port for debugger. Check SSH server logs for possible other reasons for tunnel to failure
fix the problem(s), then click [<< Back] button and repeat the tests |
And then if I delete user michael from PHPed, I think I get the same results when using michael.
The following is journalctl outputs for the various scenarios. Note that I sometimes get different results if I start when a service is using port 7869.
[michael@devserver ~]$ sudo lsof -i:7869
[michael@devserver ~]$
Terminal Account and Tunnel (SSH) account is both michael which uses keys instead of a password.
Jun 30 15:17:35 devserver.net sshd[26685]: Accepted publickey for michael from 11.22.33.44 port 64382 ssh2: RSA SHA256:lAiD9MeiXc+cwazK18zJSZOhisKLJnzD+op4sU7OOZk
Jun 30 15:17:35 devserver.net systemd[1]: Started Session 134 of user michael.
Jun 30 15:17:35 devserver.net systemd-logind[776]: New session 134 of user michael.
Jun 30 15:17:35 devserver.net sshd[26685]: pam_unix(sshd:session): session opened for user michael by (uid=0)
Jun 30 15:18:00 devserver.net sshd[26697]: Accepted publickey for michael from 11.22.33.44 port 56267 ssh2: RSA SHA256:lAiD9MeiXc+cwazK18zJSZOhisKLJnzD+op4sU7OOZk
Jun 30 15:18:00 devserver.net systemd[1]: Started Session 135 of user michael.
Jun 30 15:18:00 devserver.net systemd-logind[776]: New session 135 of user michael.
Jun 30 15:18:00 devserver.net sshd[26697]: pam_unix(sshd:session): session opened for user michael by (uid=0)
Jun 30 15:18:05 devserver.net sshd[26697]: pam_unix(sshd:session): session closed for user michael
Jun 30 15:18:05 devserver.net systemd-logind[776]: Removed session 135.
Jun 30 15:18:54 devserver.net sshd[26740]: Accepted publickey for michael from 11.22.33.44 port 62228 ssh2: RSA SHA256:lAiD9MeiXc+cwazK18zJSZOhisKLJnzD+op4sU7OOZk
Jun 30 15:18:54 devserver.net systemd-logind[776]: New session 136 of user michael.
Jun 30 15:18:54 devserver.net systemd[1]: Started Session 136 of user michael.
Jun 30 15:18:54 devserver.net sshd[26740]: pam_unix(sshd:session): session opened for user michael by (uid=0)
Jun 30 15:18:59 devserver.net sshd[26740]: pam_unix(sshd:session): session closed for user michael
Jun 30 15:18:59 devserver.net systemd-logind[776]: Removed session 136.
[michael@devserver ~]$ sudo lsof -i:7869
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
sshd 26687 michael 9u IPv4 545174 0t0 TCP localhost:mobileanalyzer (LISTEN)
sshd 26687 michael 10u IPv6 545175 0t0 TCP localhost:mobileanalyzer (LISTEN)
[michael@devserver ~]$
[michael@devserver ~]$ sudo kill 26687 |
Terminal Account and Tunnel (SSH) account is both password_user which uses a password and the michael account which uses keys instead of a password is still in my list of PhpED accounts.
Jun 30 15:15:11 devserver.net sshd[26573]: Accepted password for password_user from 11.22.33.44 port 55612 ssh2
Jun 30 15:15:11 devserver.net systemd[1]: Created slice User Slice of password_user.
Jun 30 15:15:11 devserver.net systemd-logind[776]: New session 130 of user password_user.
Jun 30 15:15:11 devserver.net systemd[1]: Started Session 130 of user password_user.
Jun 30 15:15:11 devserver.net sshd[26573]: pam_unix(sshd:session): session opened for user password_user by (uid=0)
Jun 30 15:15:18 devserver.net sshd[26573]: pam_unix(sshd:session): session closed for user password_user
Jun 30 15:15:18 devserver.net systemd-logind[776]: Removed session 130.
Jun 30 15:15:18 devserver.net systemd[1]: Removed slice User Slice of password_user.
Jun 30 15:15:30 devserver.net sshd[26606]: Accepted password for password_user from 11.22.33.44 port 53955 ssh2
Jun 30 15:15:30 devserver.net systemd[1]: Created slice User Slice of password_user.
Jun 30 15:15:30 devserver.net systemd-logind[776]: New session 131 of user password_user.
Jun 30 15:15:30 devserver.net systemd[1]: Started Session 131 of user password_user.
Jun 30 15:15:30 devserver.net sshd[26606]: pam_unix(sshd:session): session opened for user password_user by (uid=0)
Jun 30 15:15:30 devserver.net sshd[26608]: error: bind: Address already in use
Jun 30 15:15:30 devserver.net sshd[26608]: error: channel_setup_fwd_listener_tcpip: cannot listen to port: 7869
Jun 30 15:15:31 devserver.net sshd[26608]: error: bind: Address already in use
Jun 30 15:15:31 devserver.net sshd[26608]: error: channel_setup_fwd_listener_tcpip: cannot listen to port: 7869
Jun 30 15:15:32 devserver.net sshd[26608]: error: bind: Address already in use
Jun 30 15:15:32 devserver.net sshd[26608]: error: channel_setup_fwd_listener_tcpip: cannot listen to port: 7869
Jun 30 15:15:32 devserver.net sshd[26608]: error: bind: Address already in use
Jun 30 15:15:32 devserver.net sshd[26608]: error: channel_setup_fwd_listener_tcpip: cannot listen to port: 7869
Jun 30 15:15:33 devserver.net sshd[26608]: error: bind: Address already in use
Jun 30 15:15:33 devserver.net sshd[26608]: error: channel_setup_fwd_listener_tcpip: cannot listen to port: 7869
Jun 30 15:15:33 devserver.net sshd[26608]: error: bind: Address already in use
Jun 30 15:15:33 devserver.net sshd[26608]: error: channel_setup_fwd_listener_tcpip: cannot listen to port: 7869
Jun 30 15:15:34 devserver.net sshd[26606]: pam_unix(sshd:session): session closed for user password_user
Jun 30 15:15:34 devserver.net systemd-logind[776]: Removed session 131.
Jun 30 15:15:34 devserver.net systemd[1]: Removed slice User Slice of password_user.
Jun 30 15:16:22 devserver.net sshd[26620]: Accepted password for password_user from 11.22.33.44 port 64412 ssh2
Jun 30 15:16:22 devserver.net systemd[1]: Created slice User Slice of password_user.
Jun 30 15:16:22 devserver.net systemd[1]: Started Session 132 of user password_user.
Jun 30 15:16:22 devserver.net systemd-logind[776]: New session 132 of user password_user.
Jun 30 15:16:22 devserver.net sshd[26620]: pam_unix(sshd:session): session opened for user password_user by (uid=0)
Jun 30 15:16:22 devserver.net sshd[26622]: error: bind: Address already in use
Jun 30 15:16:22 devserver.net sshd[26622]: error: channel_setup_fwd_listener_tcpip: cannot listen to port: 7869
Jun 30 15:16:22 devserver.net sshd[26622]: error: bind: Address already in use
Jun 30 15:16:22 devserver.net sshd[26622]: error: channel_setup_fwd_listener_tcpip: cannot listen to port: 7869
Jun 30 15:16:23 devserver.net sshd[26622]: error: bind: Address already in use
Jun 30 15:16:23 devserver.net sshd[26622]: error: channel_setup_fwd_listener_tcpip: cannot listen to port: 7869
Jun 30 15:16:24 devserver.net sshd[26622]: error: bind: Address already in use
Jun 30 15:16:24 devserver.net sshd[26622]: error: channel_setup_fwd_listener_tcpip: cannot listen to port: 7869
Jun 30 15:16:24 devserver.net sshd[26622]: error: bind: Address already in use
Jun 30 15:16:24 devserver.net sshd[26622]: error: channel_setup_fwd_listener_tcpip: cannot listen to port: 7869
Jun 30 15:16:25 devserver.net sshd[26622]: error: bind: Address already in use
Jun 30 15:16:25 devserver.net sshd[26622]: error: channel_setup_fwd_listener_tcpip: cannot listen to port: 7869
Jun 30 15:16:27 devserver.net sshd[26624]: Accepted password for password_user from 11.22.33.44 port 64413 ssh2
Jun 30 15:16:27 devserver.net systemd[1]: Started Session 133 of user password_user.
Jun 30 15:16:27 devserver.net systemd-logind[776]: New session 133 of user password_user.
Jun 30 15:16:27 devserver.net sshd[26624]: pam_unix(sshd:session): session opened for user password_user by (uid=0)
Jun 30 15:16:29 devserver.net sshd[26624]: pam_unix(sshd:session): session closed for user password_user
Jun 30 15:16:29 devserver.net systemd-logind[776]: Removed session 133.
[michael@devserver ~]$ sudo lsof -i:7869
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
sshd 26566 michael 9u IPv4 541458 0t0 TCP localhost:mobileanalyzer (LISTEN)
sshd 26566 michael 10u IPv6 541459 0t0 TCP localhost:mobileanalyzer (LISTEN)
sshd 26566 michael 11u IPv4 543323 0t0 TCP localhost:mobileanalyzer->localhost:33732 (CLOSE_WAIT)
sshd 26566 michael 12u IPv6 543324 0t0 TCP localhost:mobileanalyzer->localhost:34498 (CLOSE_WAIT)
sshd 26566 michael 13u IPv4 543425 0t0 TCP localhost:mobileanalyzer->localhost:33736 (CLOSE_WAIT)
sshd 26566 michael 14u IPv6 543426 0t0 TCP localhost:mobileanalyzer->localhost:34502 (CLOSE_WAIT)
[michael@devserver ~]$ sudo kill 26566 |
Terminal Account and Tunnel (SSH) account is both password_user which uses a password, and I removed the michael account which uses keys instead of a password.
Jun 30 15:01:57 devserver.net sshd[26162]: Accepted password for password_user from 11.22.33.44 port 61159 ssh2
Jun 30 15:01:57 devserver.net systemd[1]: Created slice User Slice of password_user.
Jun 30 15:01:57 devserver.net systemd[1]: Started Session 120 of user password_user.
Jun 30 15:01:57 devserver.net systemd-logind[776]: New session 120 of user password_user.
Jun 30 15:01:57 devserver.net sshd[26162]: pam_unix(sshd:session): session opened for user password_user by (uid=0)
Jun 30 15:02:03 devserver.net sshd[26162]: pam_unix(sshd:session): session closed for user password_user
Jun 30 15:02:03 devserver.net systemd-logind[776]: Removed session 120.
Jun 30 15:02:03 devserver.net systemd[1]: Removed slice User Slice of password_user.
Jun 30 15:02:18 devserver.net sshd[26196]: Accepted publickey for password_user from 11.22.33.44 port 53631 ssh2: RSA SHA256:lAiD9MeiXc+cwazK18zJSZOhisKLJnzD+op4sU7OOZk
Jun 30 15:02:18 devserver.net systemd[1]: Created slice User Slice of password_user.
Jun 30 15:02:18 devserver.net systemd[1]: Started Session 121 of user password_user.
Jun 30 15:02:18 devserver.net systemd-logind[776]: New session 121 of user password_user.
Jun 30 15:02:18 devserver.net sshd[26196]: pam_unix(sshd:session): session opened for user password_user by (uid=0)
Jun 30 15:02:50 devserver.net sshd[26198]: channel 5: open failed: connect failed: open failed\nServer requests forwarding from unknown address "localhost:7869"
Jun 30 15:02:50 devserver.net sshd[26198]: channel 6: open failed: connect failed: open failed\nServer requests forwarding from unknown address "localhost:7869"
Jun 30 15:02:54 devserver.net sshd[26207]: Accepted password for password_user from 11.22.33.44 port 54423 ssh2
Jun 30 15:02:54 devserver.net systemd[1]: Created slice User Slice of password_user.
Jun 30 15:02:54 devserver.net systemd-logind[776]: New session 122 of user password_user.
Jun 30 15:02:54 devserver.net systemd[1]: Started Session 122 of user password_user.
Jun 30 15:02:54 devserver.net sshd[26207]: pam_unix(sshd:session): session opened for user password_user by (uid=0)
Jun 30 15:02:59 devserver.net sshd[26207]: pam_unix(sshd:session): session closed for user password_user
Jun 30 15:02:59 devserver.net systemd-logind[776]: Removed session 122.
Jun 30 15:02:59 devserver.net systemd[1]: Removed slice User Slice of password_user.
[michael@devserver ~]$ sudo lsof -i:7869
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
sshd 26198 password_user 11u IPv4 535498 0t0 TCP localhost:mobileanalyzer->localhost:33712 (CLOSE_WAIT)
sshd 26198 password_user 12u IPv6 535499 0t0 TCP localhost:mobileanalyzer->localhost:34478 (CLOSE_WAIT)
[michael@devserver ~]$ sudo kill 26198
|
phpinfo() shows:
dbg
DBG DBG php debugger, version 10.0.5, Copyright 2001, 2021 Dmitri Dmitrienko, http://www.nusphere.com/dbg
Version 10.0.5
Linked as a shared library.
Dbg SSL not available
Dbg ip security enabled.
Profiler enabled
Target PHP version 8.0.x
Server API FPM/FastCGI
Extensions API 420200930
Modules API 20200930
PHP API 20200930
Directive Local Value Master Value
debugger.ccov_enabled On On
debugger.connect_retries 3 3
debugger.connect_timeout_seconds 5 5
debugger.enable_session_cookie On On
debugger.enabled On On
debugger.fail_silently Off Off
debugger.hosts_allow protected value protected value
debugger.hosts_deny protected value protected value
debugger.ignore_nops Off Off
debugger.IPv6_enabled On On
debugger.JIT.enabled Off Off
debugger.JIT.host clienthost clienthost
debugger.JIT.ignore_exceptions no value no value
debugger.JIT.port 7869 7869
debugger.JIT.trig_errors no value no value
debugger.JIT.trig_exceptions Exception Exception
debugger.net.chunksize 131072 131072
debugger.net.maxpacketsize 52428800 52428800
debugger.ports protected value protected value
debugger.profiler_enabled On On
debugger.session_nocache On On
debugger.timeout_seconds 300 300 |
Please provide any help. Thanks!!!
|
|
|
| | |
Site Admin
Joined: 13 Jul 2003 |
Posts: 8344 |
|
|
|
Posted: Fri Jul 02, 2021 12:04 am |
|
|
|
|
|
Quote: | Error: (-134) debug session did not start (dbg error=-16) |
you may want to read this http://forum.nusphere.com/debugger-error-16-timeout-t10785.html
Quote: | dbglistener is listening on: all addresses, port: 7869, upnp: 0 |
if you're using ssh tunnel, no matter with password or public key, you have to use unique port -- because all these ports will open on the same server's interface with 127.0.0.1 address. Obviously the same debugger port won't open 2nd time.
Update Tools->Settings->Run & Debug / Settings -> Debugger port
Quote: | -bash-4.2$
-bash-4.2$
-bash-4.2$
... repeats... |
Can you try to set standard Linux prompt in .profile / .bash_profile?[/quote]
|
_________________ The PHP IDE team
|
|
| | |
Joined: 27 Nov 2009 |
Posts: 98 |
|
|
|
Posted: Fri Jul 02, 2021 10:17 am |
|
|
|
|
|
Thanks dmitri but still not working.
No, but just did (shown below)
dmitri wrote: | In case if you got debugger timeout error, try to adjust timeout in debugger settings. New debugger version supports debugger.connect_timeout_seconds config setting. By default it's 5 seconds and for some environments it looks a bit too aggressive.
I will update it to 30sec in next debugger update. |
Where do I change debugger.connect_timeout_seconds? Is this the same thing as "Debugger startup timeout"? Note that the default value is 15 and not 5 (see below screenshot).
dmitri wrote: | if you're using ssh tunnel, no matter with password or public key, you have to use unique port -- because all these ports will open on the same server's interface with 127.0.0.1 address. Obviously the same debugger port won't open 2nd time.
Update Tools->Settings->Run & Debug / Settings -> Debugger port |
Are you telling me to check "Listen on local host only" as shown on below screenshot?
On a related note, attempting to get things working, I opened port 7869 on my firewall. Even though it is being listened to, telenet and yougetsignal.com both say it is not opened. Doesn't really matter, but just making sure I don't need 7869 open.
sudo lsof -i:7869
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
sshd 28341 michael 9u IPv4 624209 0t0 TCP localhost:mobileanalyzer (LISTEN)
sshd 28341 michael 10u IPv6 624210 0t0 TCP localhost:mobileanalyzer (LISTEN)
|
dmitri wrote: | Can you try to set standard Linux prompt in .profile / .bash_profile? |
The previous post must have been when I was using a user without a home. Changing users, I get the following. Is this what you requested me do?
Connecting to 11.22.33.44.
Connected.
Last login: Fri Jul 2 14:21:05 2021 from c-44-33-22-11.hsd1.wa.comcast.net
[michael@devserver ~]$
[michael@devserver ~]$
[michael@devserver ~]$
[michael@devserver ~]$
[michael@devserver ~]$
...
|
Before making changes, settings were as follows:
Under Tools->Settings->Run & Debug / Settings, I changed Debugger startup timeout from 15 to 30, checked Listen on localhost only, unchecked Enable IPv6, but still shows the same. Then I created a brand new workplace, made setting changes, added a new project, and no change. Note that Settings do not seem to get propagated to even a new project (Debugger startup timeout still showed 15 and had to change it here as well) and I can't find were to change the other two settings under project. Also, not that it matters, but the debugger is still listening on all addresses and for IPV6.
So, per above, SSH tunnel as well as SSL is good, but the debug session did not start. What does this mean? Are we talking about a PHP session (storing data) and maybe they are not set up right? What type of checking is expected for the following (and what is AV?)?
- please check php installation,
- check your AV and firewall software,
- and make sure that PhpED is allowed to connect web server and send HTTP requests.
- Also make sure that the IDE (dbglistener.exe) is allowed to accept incoming connections on TCP/7869 port.
- Also make sure that SSH tunnel for debugger is configured to the server where you're about to run and debug php
Thanks!
EDIT Additional information - I don't know if it matters but maybe related to how PHP is configured? I am using php-fpm (remi distro) with Apache and use pools. Before updating to the new PhpED, I had PHP 7.4 as the default and it used /etc/httpd/conf.d/php.conf, /etc/php-fpm.d/*conf, and PHP 8 (or 7.3) use /etc/opt/remi/php80/php.ini, /etc/opt/remi/php80/php-fpm.d/*conf, etc). Note that it is also listening to a socket and not an IP. This configuration worked perfectly the earlier PhpED version. When I upgraded to PhpED to all PHP 8, I also made PHP_POOL_DEFAULT use PHP8, got rid of PHP80_POOL, and added PHP74_POOL
Define PHP_POOL_DEFAULT "proxy:unix:/run/php-fpm/www.sock|fcgi://localhost"
Define PHP80_POOL "proxy:unix:/run/php-fpm/php80.sock|fcgi://localhost"
Define PHP73_POOL "proxy:unix:/run/php-fpm/php73.sock|fcgi://localhost" |
|
|
|
| | |
|
| | |
Joined: 27 Nov 2009 |
Posts: 98 |
|
|
|
Posted: Fri Jul 02, 2021 1:46 pm |
|
|
|
|
|
dmitri wrote: | we're talking about debugger module, it's what connects back to the IDE, so it's in php.ini, on your server |
Ah, thank you. My php.ini currently shows the following. Note that the PhpED wizard told me to add slightly different content to php.ini, but after I got the errors, added a few lines that were on my previous build which worked. If anything looks bad, please let me know, otherwise I will give it a try when I get home today. Thanks
zend_extension="/usr/lib64/php/modules/dbg-php-8.0.so"
[debugger]
debugger.hosts_allow=44.33.22.11, 127.0.0.1, localhost, ::1
debugger.hosts_deny=ALL
; debugger.ports=7869
debugger.enabled=on
debugger.profiler_enabled=on
debugger.ports=7869, 10000/16
; I need to add the following:
debugger.connect_timeout_seconds = 30 |
|
|
|
| | |
Site Admin
Joined: 13 Jul 2003 |
Posts: 8344 |
|
|
|
Posted: Fri Jul 02, 2021 8:01 pm |
|
|
|
|
|
Looks correct.
Short note about filters:
Quote: | debugger.hosts_allow=44.33.22.11, 127.0.0.1, localhost, ::1 |
You never need server's ip here. In case if you work with server through SSH tunnel(s) all you need is localhost and its numerical representation in IPv4 and IPv6 variants.
In case if you connect directly, you workstation IP address(es) should be added.
Quote: | debugger.ports=7869, 10000/16 |
If your team has 2 developers and you assigned two ports, you have to list them there, like
debugger.ports=7869, 7870
Note that 10000/16 allows range of ports from 10000 to 10015. It does NOT opens the ports on your server, it allows debugger module to use these ports when it connects to the client(s).
|
_________________ The PHP IDE team
|
|
| | |
|
| | |
Site Admin
Joined: 13 Jul 2003 |
Posts: 8344 |
|
|
|
Posted: Fri Jul 02, 2021 9:13 pm |
|
|
|
|
|
Sorry to hear the issue still not resolved.
Regarding your previous question:
Quote: | Are you telling me to check "Listen on local host only" as shown on below screenshot? |
No I meant you have to use port A while you colleague should use port B, like 7867 for you and 7868 for him.
You'd do this on your client side (in the IDE), and on the server -- by allowing debugger to use these ports.
As of listen of local host only, yes, it's enough if tunnel is used and you don't need UPnp port mapping.
Quote: | On a related note, attempting to get things working, I opened port 7869 on my firewall. Even though it is being listened to, telenet and yougetsignal.com both say it is not opened |
Debugger does not open any ports on your server. You don't need to open any ports on your server, except regular ssh and web ports if you're using web and ssh of course.
Debugger is listening on your development (client) computer. What makes port used on your server is ssh tunnel. With tunnel connections is established in the following way:
your sever:[php script, debugger module] => {localhost:7869, sshd} <===ssh communication===>
your client: <===ssh communication===> {localhost:7869, dbglistener.exe} <=> IDE
Without ssh tunnel it's connected in the following way:
your sever:[php script, debugger module] === public network ===>
your client: {public ip:7869} ==> {optionally nat port forwarding on your router} ===> {internal IP:7869, dbglistener.exe} <=> IDE
Quote: | The previous post must have been when I was using a user without a home. Changing users, I get the following. Is this what you requested me do?
Connecting to 11.22.33.44.
Connected.
Last login: Fri Jul 2 14:21:05 2021 from c-44-33-22-11.hsd1.wa.comcast.net
[michael@devserver ~]$
[michael@devserver ~]$
[michael@devserver ~]$
[michael@devserver ~]$
[michael@devserver ~]$
|
I managed to reproduce this issue with running debugger in remote terminal. Fix will be available soon.
But it has nothing to do with error -16 you reporter before.
|
_________________ The PHP IDE team
|
|
| | |
Joined: 27 Nov 2009 |
Posts: 98 |
|
|
|
Posted: Sat Jul 03, 2021 12:50 pm |
|
|
|
|
|
Glad you reproduced the running debugger in remote terminal issue.
The part about ssh tunnels makes sense.
Note that I get errors such as the following after a tunnel using port 7869 has been established and then I change SSH accounts. This is to be expected and that I need to kill the process on the given port to make it available, right?
Jul 03 16:54:04 devserver.net sshd[61710]: error: bind: Address already in use
Jul 03 16:54:04 devserver.net sshd[61710]: error: channel_setup_fwd_listener_tcpip: cannot listen to port: 7869
Jul 03 16:54:16 devserver.net sshd[61697]: channel 5: open failed: connect failed: open failed\nServer requests forwarding from unknown address "localhost:7869"
Jul 03 16:54:16 devserver.net sshd[61697]: channel 6: open failed: connect failed: open failed\nServer requests forwarding from unknown address "localhost:7869"
|
I've tried different combinations of running php-fpm and apache as different users with no change. Obviously, no need to have the ssh account use any specific user, right? Also, terminal accounts are just for cli mode, right? Does the following look as expected? Note that there are two processes where php-fpm is using user apache.
[michael@devserver test]$ sudo lsof -i:7869
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
sshd 63137 michael 9u IPv4 1341345 0t0 TCP localhost:mobileanalyzer (LISTEN)
sshd 63137 michael 10u IPv6 1341346 0t0 TCP localhost:mobileanalyzer (LISTEN)
[michael@devserver test]$ sudo lsof -i:7869
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
sshd 63137 michael 9u IPv4 1341345 0t0 TCP localhost:mobileanalyzer (LISTEN)
sshd 63137 michael 10u IPv6 1341346 0t0 TCP localhost:mobileanalyzer (LISTEN)
sshd 63137 michael 11u IPv4 1342794 0t0 TCP localhost:mobileanalyzer->localhost:36282 (CLOSE_WAIT)
sshd 63137 michael 12u IPv6 1342795 0t0 TCP localhost:mobileanalyzer->localhost:42520 (ESTABLISHED)
php-fpm 63168 apache 4u IPv6 1342792 0t0 TCP localhost:42520->localhost:mobileanalyzer (ESTABLISHED)
[michael@devserver test]$ sudo lsof -i:7869
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
sshd 63137 michael 9u IPv4 1341345 0t0 TCP localhost:mobileanalyzer (LISTEN)
sshd 63137 michael 10u IPv6 1341346 0t0 TCP localhost:mobileanalyzer (LISTEN)
sshd 63137 michael 11u IPv4 1342794 0t0 TCP localhost:mobileanalyzer->localhost:36282 (CLOSE_WAIT)
sshd 63137 michael 12u IPv6 1342795 0t0 TCP localhost:mobileanalyzer->localhost:42520 (CLOSE_WAIT)
sshd 63137 michael 13u IPv4 1345595 0t0 TCP localhost:mobileanalyzer->localhost:36286 (CLOSE_WAIT)
sshd 63137 michael 14u IPv6 1345596 0t0 TCP localhost:mobileanalyzer->localhost:42524 (CLOSE_WAIT)
[michael@devserver test]$ |
Just to make sure, you have tested using php-fpm and not just mod_php, right? Also, tested running PHP-FPM over an Unix Socket and not just a TCP/IP Socket, right?
What does Error: (-134) debug session did not start (dbg error=-16) mean? Am I able to access any logs or do any tests to determine why?
Thanks
|
|
|
| | |
Site Admin
Joined: 13 Jul 2003 |
Posts: 8344 |
|
|
|
Posted: Sat Jul 03, 2021 1:41 pm |
|
|
|
|
|
Quote: | Jul 03 16:54:04 devserver.net sshd[61710]: error: bind: Address already in use
Jul 03 16:54:04 devserver.net sshd[61710]: error: channel_setup_fwd_listener_tcpip: cannot listen to port: 7869 |
I can think of two possible reasons for that. First is very obvious -- you and your colleague are using the same debugger port. As I mentioned above, you'd use different ports.
2nd reason is less obvious -- if ssh TCP connection died, but sshd hasn't recognized it yet and you're coming in with new session.
In this case you have two options:
* configure SSHD to run keep-alive (at L5 level). In this case it will eventually detect that session is dead and will terminate it
* kill sshd child process that is listening on the port.
Quote: | Obviously, no need to have the ssh account use any specific user, right? |
no need from debugger perspectives, but might be better from security perspectives.
Quote: | Also, terminal accounts are just for cli mode, right? |
yes, as long you want to run CLI remotely right in the IDE. You can do this manually at any time, like `DBGSESSID='1@localhost:7869;d=1' php myscript.php`. In this case you don't need terminal account in the IDE. Putty or secureCRT would be enogh and you can try it right away, no need any fixes from me and no need any prompt changes.
perhaps -n option is needed -- it works somewhat faster then.
Quote: | Does the following look as expected? Note that there are two processes where php-fpm is using user apache. |
if it's single-threaded (non-TS) module, you may need much more than just two, depending on web load.
if it's multi-threaded (TS) module, two looks ok.
Quote: | Just to make sure, you have tested using php-fpm and not just mod_php, right? Also, tested running PHP-FPM over an Unix Socket and not just a TCP/IP Socket, right? |
it's irrelevant to -16 problem.
|
_________________ The PHP IDE team
|
|
| | |
Joined: 27 Nov 2009 |
Posts: 98 |
|
|
|
Posted: Sat Jul 03, 2021 3:53 pm |
|
|
|
|
|
Thank you dmitri,
dmitri wrote: |
Quote: | Note that I get errors such as the following after a tunnel using port 7869 has been established and then I change SSH accounts. This is to be expected and that I need to kill the process on the given port to make it available, right?
|
I can think of two possible reasons for that. First is very obvious -- you and your colleague are using the same debugger port. As I mentioned above, you'd use different ports.
2nd reason is less obvious -- if ssh TCP connection died, but sshd hasn't recognized it yet and you're coming in with new session.
In this case you have two options:
* configure SSHD to run keep-alive (at L5 level). In this case it will eventually detect that session is dead and will terminate it
* kill sshd child process that is listening on the port.
|
I am the only user and unless I have unknown colleagues (let me know if you have reasons to think I do!), this does not seem like an issue as it is expected to get this error if another service is already listening to a given port. BTW, the only time this comes up is if I change the ssh account in the wizard but if I change it on properties, the phped local client must tell the remote server to kill the connection and no error.
dmitri wrote: | Quote: | Just to make sure, you have tested using php-fpm and not just mod_php, right? Also, tested running PHP-FPM over an Unix Socket and not just a TCP/IP Socket, right? |
it's irrelevant to -16 problem. |
Just grasping at straws. But something needs to be relevant. Earlier version worked great. Maybe something dumb on my side, but I have checked multiple times and think/hope I am right. How can I get clues on what is causing the debug session not to start, and what does the "debug session" really mean?
|
|
|
| | |
Joined: 27 Nov 2009 |
Posts: 98 |
|
|
|
Posted: Sun Jul 04, 2021 1:56 pm |
|
|
|
|
|
I removed the latest build of PhpED off my windows PC and installed the old 19.3 (Build 19334, 64 bit) version I still had in my downloads folder, and replaced dbg-php-7.4.so with the version used by 19.3, and all works again. I made zero other changes which makes me believe that my server is configured correctly.
I then upgraded to the last build of PhpED and updated dbg-php-7.4.so, and have the same error.
One think I noticed between these two attempts was my list of accounts were different, and I think the issue is somehow my data on the windows machine got corrupt and specifically it is related to accounts (when trying to get php8 working, phped prompted me that I couldn't delete a default account but allowed me to do so).
I then removed the new version, reinstalled old version, exported users, upgraded to new version, deleted all accounts, imported new accounts and still error.
I then removed the new version, deleted C:\Program Files\NuSphere and C:\Program Files (x86)\NuSphere, and made backup and then deleted C:\Users\michael\Documents\NuSphere, C:\Users\michael\AppData\Local\NuSphere, and C:\Users\michael\AppData\Roaming\NuSphere. I then reinstalled the new version and it says it can't find my last workspace (Evidently, I didn't delete all remnants of phped). I also noticed that Project Properties/Project/Content also still shows signs of an old account which shouldn't exist anymore. I copied my backed up copy of Documents\NuSphere\Projects (maybe a bad idea?). I've tried different options spanning from adding existing accounts or starting from fresh, but still the same errors.
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
All times are GMT - 5 Hours
Page 1 of 2
|
|
|
| |