Does xdebug only work on a local webserver? - netbeans

I have a webserver running in the local network of my company. I installed xdebug on it.
Now I want to use my netbeans on my local computer to debug my website which runs on this local webserver.
Is this even possible, or does xdebug only work if netbeans is running on the pc/server where the webserver is running?

I answered my question... I just had to enter the IP Adresse of my PC to the php.ini under xdebug.remote_host.
[XDebug]
zend_extension='/usr/lib64/php5/extensions/xdebug.so'
xdebug.remote_enable=on
xdebug.remote_handler="dbgp"
xdebug.remote_host="192.168.1.121"
xdebug.remote_port=9000
xdebug.remote_mode=req
xdebug.idekey="netbeans-xdebug"
xdebug.renite_enable = 1
xdebug.max_nesting_level = 1000
xdebug.profiler_enable_trigger = 1
xdebug.profiler_output_dir = '/var/log'
Don't forget to restart your webserver.

Related

Netbeans IDE8 Glassfish 4, GlassFish Server: Administrator port is occupied by null

I just downloaded Netbeans IDE7 with the Glassfish 4.
I just made a project to test it out and see how it goes, and I got this error right from the start:
Could not start GlassFish Server: DAS port is occupied while server is not running
[location]: Deployment error: Could not start GlassFish Server: DAS port is occupied while server is not running
See the server log for details.
BUILD FAILED (total time: 1 second)
I have reinstalled it three times, with the Glassfish and without and then later add it to Netbeans, i changed the domain.xml name="admin-listener" port="4848" to something different
i did this cmd code netstat -aon | find ":80" | find "LISTENING" and closed the programm.
i ran as administrator i think i did almost everyting but it wont simply run, and it keeps returning to the same error
usually i would have given up but this software is required for a school project.
i will try everything.
i hope someone can help me.
Thx in advance
You have to find the process that has taken the port you need. You can try finding it by running the terminal with the command:
netstat -aon | find ":80" | find "LISTENING"
Find the information you need and than kill the process with specific PID in Task Manager.
I hope you find this useful,
Thanks.
A few points:
Why not download NetBeans 8 that also includes GlassFish 4?
Assuming that you have successfully figured out that no other process is listening on port 4848, then Which version of the JDK are you using? Can you try JDK 7 if you are using JDK 8?
Looks like you are not alone - see NetBeans bug 237477.
Note that this isn't the only problem. I run on a Mac and can use the asadmin start command successfully on the remote server. IF I try to start it from NetBeans, it gives me this message.
One hint might be that the domain.xml file is set so that the listening port is 9090, the properties screen for the remote server, which I entered 9090 for, tells me the HTTP port is 23043. I can't edit it. Everytime I try to create that remote server it sets it to this value. The server will run fine if I start it by hand on the remote server, but NetBeans doesn't think it is running.
This occurs because I had to select domain2 because NetBeans says domain1 is already registered on my local machine. I wanted to have a local domain1 and a remote domain1 that are identical so I can test locally, and then deploy remotely.
This error message could be misleading, because it is the same when IP adress of glassfish server in netbeans settings is wrong (not port).
By my experience with this over win 8.1 + Netbeans 8.0 + Glassfish 4.0
The problem resides in permission of folder in windows that block the server execution
I solve the problem changing the permission of the glassfish/domain/domain1 folder for xxxx/user to totalcontrol
If this not solve your problem, try launch the server over console:
asadmin start-domain --verbose
And read the exceptions to try solve the problem.
-EDIT:
Reading other post to try help:
like this: Glassfish server started failed in netbeans 6.9
Or check your firewall:
allow >> C:\Program
Files\glassfish-X.X\glassfish\modules\glassfish.jar
In my case when using the command
netstat -aon | find ":4848" | find "LISTENING"
I noticed that one process was occupying this port. When checked what it was I noticed it was VMWare NAT controller, because I previously had configured a network adapter to listen to this port.
Just stopped all VMWare related services (in my case I didn't need them for development purposes), and solved the problem.
Go to Task Manager -> Services -> Stop Process whose PID IS 3136,2268,2468 ,23.... and near Range in PID. All processes near to the web server's PID.
It works for me on Windows 8.1 pro & Windows 7.
I had the same error message.
Turned out it was caused because my firewall blocked port 4848
May be late but I solved this issue by deleting the app server from the Netbeans and by adding it again. In my case Netbeans 8.2 and Payara 4.1 instead of Glassfish.
If you changed the host of Glassfish server then set it to localhost it should work.

Netbeans debugging remotely (Xdebug)

I have created a remote sourced php project on an Amazon ec2 server, which I am editing the source code from netbeans from my local windows 7 machine and uploading to the ec2 instance with SFTP.
Uploading the code is working fine and the application itself is working fine. However when I try to debug the code netbeans will NOT stop at any breakpoints.
I have mapped the server path and project path in the Run Configuration category on netbeans as specified in the documentation here.
I have also tried adding the following to my php.ini on my ec2 server
xdebug.remote_enable=1
xdebug.remote_handler=dbgp
xdebug.remote_host=<ip address>
xdebug.remote_port=9000
xdebug.remote_log="/tmp/log/xdebug.log"
Where the ip address = my server's IP address.
The remote_host setting should be the IP address of the machine that runs the IDE. You need to make sure that the EC2 instance with Xdebug can connect to port 9000 on the network interface that talks to the EC2 instance. If you do this from a local LAN with NAT, then you would need to setup a tunnel. There might be some hints at http://derickrethans.nl/debugging-with-xdebug-and-firewalls.html to help you with tunnels.

vagrant cannot access webserver on localhost:8080

I am running CentOS 6.4 through vagrant.
I have put this line inside my Vagrantfile:
config.vm.network :forwarded_port, guest: 80, host: 8080
Then I have installed nginx in the VM and verified it's working with:
wget http://locahost/
Works fine.
But from my host machine (Macbook Air, Mountain Lion) when I go to:
http://localhost:8080
It times out. Did I miss any configuration in Vagrantfile?
I have used this box:
https://github.com/NREL/vagrant-boxes
Have you checked your iptables?
It's a common mistake: when you use provisioning you also have to configure your iptables. (For puppet you have this module.) If you don't want to work with a firewall you can just do vagrant ssh followed by sudo service iptables stop.
What do you see when you go to your browser? Does it say Data not received or it never stops reloading? Do you get any messages in your browser? The server config file must be a bit messed up. Try reloading the server configuration, and restarting it.
Also, try changing the port number to something else. With the newer version of Vagrant, the syntex looks a bit different. So you have to do:
config.vm.forward_port 80, 2759
This is the config file that I use for one of my instances:
Vagrant::Config.run do |config|
config.vm.box = 'rails-dev-ready'
config.vm.host_name = 'rails-dev-ready'
config.vm.forward_port 5800, 5800
config.vm.forward_port 1080, 1090
config.vm.forward_port 80, 2759
config.vm.provision :puppet,
:manifests_path => 'puppet/manifests',
:module_path => 'puppet/modules'
config.vm.share_folder "sharedapps", "/home/vagrant/sharedapps", "sharedapps"
end
I recently set up a CentOS 6.4 box. My ports got all messed up because of iptables. I just disabled the service. It's in /sbin/sevices.
You may run the following command to find out if any other process (such as Tomcat) is bind to port 8080:
lsof -i :8080
If so, that may cause the problem.
I have found a solution,
I have found that there is an issue with Apache + vagrant, and sometimes Apache won't start automatically.
Please try: sudo service apache2 start once logged in via ssh.
I was having issues with Vagrant and all the error messages indicated a networking problem, but in reality my Apache service just wasn't starting on vagrant up

debugging with netbeans and xdebug won't work - netbeans don't start browser

Try and error.. did not helped me after 2 hours even with "googling" around. No one seems to have my problem or there is a easy solution that i don't see.
My phpinfo() show xdebug just fine:
version 2.1
xdebug.remote_enable On
xdebug.remote_handler dbgp
xdebug.remote_host localhost
xdebug.remote_mode req
xdebug.remote_port 9000
My netbeans listen to port 9000 (but just on ipv6; may be this is the problem):
tcp6 0 0 :::9000 :::* LISTEN 5290/java
Netbeans is reachable through telnet:
$ telnet localhost 9000
Trying 127.0.0.1...
Connected to localhost.
But netbeans does not start the browser until i click the "stop" button. Then it opens up a browser with ?XDEBUG_SESSION_START=netbeans-xdebug. How to disable ipv6 for netbeans? I don't want to disable the entire ipv6 support (ipv6 support in enabled in phpinfo()). Any other ideas?
Version:
OS: Ubuntu 12.04 LTS
Apache: 2.2.22
PHP-CGI: 5.3.10
Netbeans: 7.2
Java: 1.7.0_05
I had the same problem as the browser not coming up and following is what fixed the problem.
There are actually 3 potential locations where you can specify the debugging port
Php.ini -- {xdebug.remote_port=9000}
In Netbeans IDE under - preferences - php - general {debugger port =9000; session ID= netbeans-xdebug}
In the run configurations - Advanced !! DONT set this one - it refers to 'Debugger Proxy' if you set this the browser window will not come up until you have maintained the same proxy settings in the netbeans - preferences - general tab.
PS: all of the above or on a Mac..
I had a bad run configuration in project. Netbeans was waiting for a debugging proxi on localhost:9000. I did not remember to set this setting. If someone has the same problem check this configuration too.
In my case the problem the project URL under Project properties in Run configuration was pointing to a subdirectory instead of the root directory of the server, after i changed to localhost everything was fine.
I found the answer after reading this article.
http://shinephp.com/netbeans-7-0-php-waiting-for-connection-to-xdebug/

I can ping my centOS virtual machine but I cant access its shared folders

so this is the setup:
I have a Windows XP installed, VirtualBox and a centOS 6.2 virtual machine.
I installed Samba, and currently, my VM and host Windows are in the same subnet.
I can ping my VM from Windows and vice versa.
I have a created a shared folder via Samba like this:
[Share]
path = /home/share
writable = yes
guest ok = yes
guest only = yes
create mode = 0777
directory mode = 0777
share modes = yes
*I followed a full tutorial here
My problem now is that, when I try to access such folder like this \192.xx.xxx.xxx\home\share (192.xx.xxx.xxx is the IP address of my VM) from Windows "Run",
Windows can't find it.
P.S. I've turned off my Windows Firewall (although Trend Micro personal firewall is still on)
found the solution, I changed the iptables, and smb.conf to allow my Host IP address to access my guest. Thanks anyway :)