Fehler beim Ausführen von script.php: Port 9000 ist beschäftigt

9

Ich habe php.ini und Debug config in phpstorm festgelegt. Versuchen, PHP-Skriptausgaben in phpstorm zu debuggen Ereignisprotokoll mit:

%Vor%

Ende von php.ini:

%Vor%

Der Debug-Port in pStorm wird ebenfalls auf 9000 gesetzt. netstat -na gibt mit:

aus %Vor%

Was ist, wenn ich auf einen anderen Port setze? zB wenn man es auf 10001 setzt, scheint es den Job zu machen. Oder wie man es richtig macht. Ich bin mir nicht sicher, ob ich verstehe, wie das xDebug funktioniert. Es ist so, als ob Debug("script.php")(Shift+F9) in phpstorm mit gesetztem Haltepunkt in der Datei läuft?

Hat jemand eine Idee?

BEARBEITEN:

Von: Ссылка

%Vor%

Was passiert, wenn ich den Port für einen anderen als 9000 ändere? Vielleicht etwas über 50k.

    
Jacob 01.10.2013, 06:15
quelle

6 Antworten

3

Konnte nicht identifizieren mit lsof und netstat die pid des Prozesses läuft auf 9000 Port. Temporäre einfachste Lösung ist nur den Port in phpstorm und php.ini für etwas anderes zu ändern, das nicht wirklich benutzt wird (wie 10k ).

    
Jacob 01.10.2013, 11:12
quelle
8

Der Prozess, der auf Port 9000 läuft, könnte PhpStorm selbst sein.

Überprüfen Sie die aktuell verwendeten Ports wie Jacob erwähnt (unter Windows cmd: netstat -a -b ):

Wenn PhpStorm.exe unter : 9000 aufgeführt ist, müssen Sie nur den Port des integrierten Servers in den Einstellungen & gt; Build, Ausführung, Bereitstellung & gt; Debugger z. 63342 (das war die Standardeinstellung meiner PhpStorm-Installation).

    
Philipp Michael 01.03.2016 13:37
quelle
5

Im Grunde benutzt ein anderer Prozess 9000 und benutzt ihn nicht, normalerweise für eine andere IDE, die gleichzeitig läuft

Windows-Korrektur - & gt;

  1. FINDEN SIE PROZESS MIT 9000

öffnen Sie cmd.exe

netstat -o

%Vor%
  1. KILL-PROZESS

taskkill / PID XXXX

  1. PROFIT ...?, nun sollten Sie den Debugger
  2. ausführen können
aqm 18.04.2014 08:29
quelle
3

Hinweis zum zukünftigen Selbst:

In meinem Fall wurde dies durch die Portweiterleitung der virtuellen Maschine verursacht (Vagrant auf Virtual Box). Ich dachte, das Weiterleiten von 9000 wäre eine gute Idee.

LÖSUNG: Verbinden Sie sich mit der VM IP 10.166.53.1 , die die Standard Virtual Box ist

Inhalt meiner /etc/php5/cgi/conf.d/xdebug.ini

%Vor%     
Maciej Jankowski 18.08.2015 13:01
quelle
2

GNU / Linux-Lösung (weil es ein Leben außerhalb von Windows gibt):

Nach der Lösung von @aqm

finde zuerst den Prozess über Port 9000.

%Vor%

Sie erhalten eine Ausgabe wie folgt:

%Vor%

Sie benötigen PID, um den Prozess mit diesem Befehl zu beenden:

%Vor%

NOTE : Möglicherweise zeigt Ihr Prozess seine PID nicht an. Möglicherweise führen Sie PHP-FPM mit dem Standardport 9000 aus. In diesem Fall können Sie PHP ändern -FPM-Port oder PHP Xdebug-Port.

LÖSUNG 1 - Ändern Ihrer Xdebug-Konfiguration:

Bearbeiten Sie /etc/php/php.ini

suche nach xdebug.remote_port=9000 und ersetze sie mit deinem neuen Port

LÖSUNG 2 - PHP-FPM-Port ändern:

Bearbeiten /etc/php/php-fpm.conf

Suche Zeile mit listen = 127.0.0.1:9000 und ersetze 9000 mit deinem neuen Port

Laden Sie dann den Dienst neu:

%Vor%

Bearbeiten Sie dann Ihre Nginx- oder Apache-Konfiguration, um diesem neuen Port mitzuteilen, suchen Sie nach 127.0.0.1:9000 in /etc/httpd/httpd.conf oder /etc/nginx/nginx.conf und ersetzen Sie sie durch Ihren neuen Port

Laden Sie Ihren Server neu:

%Vor%

oder

%Vor%

Ich hoffe es hilft:),

Namaste.

    
Lyoneel 01.08.2015 00:56
quelle
2

Erstens, auch wenn es etwas abseits ist, denke ich, dass es hilft. Ich verwende für jedes Docker-Composer-Projekt eine andere Netzwerkschnittstelle. Auf diese Weise kann ich ohne Probleme einen persistenten Domainnamen in / etc / hosts abbilden, in diesem Beispiel ist 192.168.33.102 project.domain.local .

Hier ist ein Beispiel für die YAML-Einrichtung:

%Vor%

Der PHP-Container hört auf 9001 für php7.0-fpm und auf 9000 für xdebug und gibt keine Ports frei.

PhpStorm Debug Port ist auf 9000 voreingestellt und der Server-Host ist auf 192.168.33.102 (oder den Wert von / etc / hosts, was project.domain.local ist) gesetzt.

Wie in den Ports von php container zu sehen ist, wird ein anderer Mapping-Port auf 10000 gesetzt, er kann einen anderen Wert als 9000 haben, um den Busy-Fehler von PHPStorm zu entfernen.

Außerdem ist es wichtig, den Port an docker-compose zu binden. Es funktionierte nicht, ohne den Port zuzuordnen und es funktionierte nicht mit 9000: 9000 .

Ich hoffe, es hilft jemand anderem!

PS: Hier ist die xdebug.ini:

%Vor%     
AVRAMESCU Razvan 26.02.2016 14:59
quelle

Tags und Links