2015-12-27 9 views
5

Ich richtete eine Vagrant Box Laravel/Homestead V0.4.0.
Ich installiere Homestead V3.0.1 mit Composer.
Schließlich laufe ich „Vagabund up“ und „Vagabund ssh“, dann, und ich bin in der Homestead VM, aber ...
Xdebug in Vagrant Laravel/Gehöft V0.4.0/v3.0.1

Es Xdebug umfassen sollte, aber es hat ... nicht
Wenn ich run phpinfo() gibt es keine Xdebug info.
Auch in /etc/php/7.0/fpm/php.ini oder in der config.d Ordner, gibt es keine Konfigurationen für Xdebug.

Mein Ziel ist es, ein Laravel-Projekt mit Netbeans IDE debuggen zu können. Das Projekt läuft innerhalb der Homestead-VM, aber ich weiß nicht, warum es Xdebug in der Homestead-VM gibt. Jede Hilfe, um dies zu erreichen, wird sehr geschätzt.

+0

ich es auch zu sehen bin. Es sieht so aus, als ob XDebug in diesem letzten Build entfernt wurde. Wird mit Anweisungen zur Implementierung folgen. – maiorano84

+0

taylor hinzugefügt xdebug in [v0.4.1] (https://atlas.hashicorp.com/laravel/boxes/homestead/versions/0.4.1) –

Antwort

5

EDIT: Ab Version 0.4.1 wurde XDebug in Homestead zurückgelegt. Das Kompilieren von XDebug aus der Quelle sollte nicht mehr notwendig sein.


In Ihrem ~/.homestead Verzeichnis sollte eine Datei after.sh aufgerufen werden. Auf diese Weise können Sie Ihre eigenen Befehle ausführen, nachdem der Homestead-Bereitsteller beendet wurde.

Kopieren Sie den folgenden in Ihre after.sh Datei:

#!/bin/sh 

# Install Xdebug 
git clone git://github.com/xdebug/xdebug.git 
cd xdebug 
phpize 
./configure --enable-xdebug 
make 
make install 

# Configure Xdebug 
cat > /etc/php/mods-available/xdebug.ini <<EOL 
zend_extension=xdebug.so 
xdebug.default_enable=1 
xdebug.remote_enable=1 
xdebug.remote_port=9000 
xdebug.remote_autostart=1 
xdebug.remote_connect_back=1 
EOL 
ln -s /etc/php/mods-available/xdebug.ini /etc/php/7.0/fpm/conf.d/20-xdebug.ini 
service php7.0-fpm restart 

nach Beendigung des Vorgangs ein vagrant destroy und vagrant up ausführen oder vagrant provision laufen die Shell-Befehl, um sicherzustellen, ordnungsgemäß ausführt.

Diese Version von XDebug ist ein direkter Klon des Github Master-Zweigs. Dieser Zweig wird als instabil betrachtet. Sobald das Xdebug github-Konto eine Verzweigung für 2.4 oder 2.5 hinzufügt, vergewissern Sie sich, dass Sie Ihren Shell-Befehl aktualisieren, um diese Verzweigung zu überprüfen, bevor Sie die verschiedenen Konfigurations- und make-Befehle ausführen.

Außerdem füge ich nur Xdebug zur FPM-Konfiguration hinzu. Ich füge es nicht zur CLI-Konfiguration hinzu. Sie werden Xdebug wahrscheinlich nur in einem phpinfo()-Aufruf und nicht einem php -i-Aufruf sehen.

Abgesehen davon, testete ich diese auf meinem eigenen Umgebung:

  • Homestead Box Version 0.4
  • Github Klon Laravel/Gehöft 3.0.1
  • PhpStorm IDE

Alles scheint wie erwartet arbeiten. Lassen Sie mich wissen, ob das hilft.

+0

Vielen Dank! Ich habe Xdebug 2.4.0RC3 manuell im Homestead installiert. Danach folge ich diesen Schritten netbeans zu konfigurieren: http://www.papayasoft.com/2013/02/25/debugging-vagrant-virtualbox-vm-netbeans/. Jetzt funktioniert es perfekt. – udubniewski

+0

Ich bin froh zu helfen. Wenn dies Ihre Frage beantwortet hat, markieren Sie diese als beantwortet, damit andere auch sehen können. – maiorano84

0

Das ist alles was Sie brauchen in ~/.homestead/nach.sh:

#!/bin/sh 

# If you would like to do some extra provisioning you may 
# add any commands you wish to this file and they will 
# be run after the Homestead machine is provisioned. 
apt-get install php-xdebug 
4

laufen diese einfach Ihre Heimstätte

php -v 

sudo phpenmod xdebug 

sudo service nginx restart 
+0

Ehrfürchtiger Mann. Du bist ein Guru. Danke vielmals – hhsadiq