2013-07-07 91 views
3

我嘗試使用phpstorm遠程調試php應用程序。我在vmware虛擬機上使用了centos 6.4,php5.3和apache 2.2,以及在真正的ubuntu上使用firefox的phpstorm。 Xdebug的是真正安裝:使用xdebug在centos上進行遠程調試6.4

Installed Packages 
Name  : php-pecl-xdebug 
Arch  : i686 
Version  : 2.1.4 
Release  : 1.el6 
Size  : 580 k 
Repo  : installed 
From repo : epel 
Summary  : PECL package for debugging PHP scripts 
URL   : http://pecl.php.net/package/xdebug 
License  : PHP 

而且的phpinfo證實了這一點太:

This program makes use of the Zend Scripting Language Engine: 
Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies 
    with Xdebug v2.1.4, Copyright (c) 2002-2012, by Derick Rethans 

當我通過SSH我的腳本停止控制檯運行腳本(簡單的Hello World),我得到的連接畝IDE從xdebug和xdebug在自己的日誌中寫入信息。 但是,當我從browsen運行腳本 - 是沒有效果的,即使在xdebug日誌。 我嘗試使用Firefox擴展來啓動調試會話,我嘗試使用xdebug.remote_autostart = 1選項,tru在centos中關閉iptables,但也沒有效果。 我做錯了什麼? xdebug配置:

; Enable xdebug extension module 
zend_extension=/usr/lib/php/modules/xdebug.so 
;xdebug.remote_host=10.0.0.1 
xdebug.remote_connect_back=1 
xdebug.remote_enable=1 
xdebug.remote_port=9000 
xdebug.remote_handler=dbgp 
;xdebug.remote_mode=req 
;xdebug.profiler_enable=1 
;xdebug.profiler_enable_trigger=1 
;xdebug.remote_autostart=1 
;xdebug.idekey=PHPSTORM 
xdebug.remote_log="/tmp/xdebug.log" 

回答

6

哦,我的上帝,問題解決了。這都是selinux。

setsebool httpd_can_network_connect = 1,nttpd restart - 和phpstorm從xdebug獲取連接。

+0

你好,請你更多地討論你的答案?我試圖達到相同的目標,但目前爲止尚未實現。謝謝 – MrCujo

+0

你有同樣的問題? xdebug可以從控制檯腳本獲得連接,但在http服務器執行腳本時無法獲取?你在redhat/centos/fedora(使用selinux的系統)工作? – Hayate

+0

是的,沒錯。我的VM服務器使用Centos的7歲,我的主機是OS X – MrCujo

0

等/ selinux的/配置改變

  • 這個文件控制的SELinux的系統上的狀態。

  • SELINUX =可以利用這三個值中的一個:

  • 採取強制執行措施 - SELinux安全策略強制執行。

  • 寬容 - SELinux打印警告而不是強制執行。

  • 已禁用 - 未加載SELinux策略。 SELINUX =執行

  • SELINUXTYPE =可採取三種兩個值:

  • 目標 - 目標進程保護,

  • 最小的 - 有針對性的政策的修改。只有選定的進程是 保護。

  • mls - 多級安全保護。

SELINUXTYPE =靶向

  • 這個文件控制的SELinux的系統上的狀態。

  • SELINUX =可以利用這三個值中的一個:

  • 採取強制執行措施 - SELinux安全策略強制執行。

  • 寬容 - SELinux打印警告而不是強制執行。

  • 已禁用 - 未加載SELinux策略。

SELINUX =禁用

  • SELINUXTYPE =可採取三種兩個值:

  • 目標 - 目標進程保護,

  • 最小的 - 有針對性的政策修改。只有選定的進程是 保護。

  • mls - 多級安全保護。

SELINUXTYPE =有針對性的