2014-04-28 32 views
4

我的PHP Storm IDE中似乎已經破壞了一些東西。當我嘗試使用偵聽器進行調試時,Storm會加載「來自Xdebug的傳入連接」對話框,但服務器名稱文本字段爲空。我可以指定要調試的文件,但在IDE中沒有任何反應。我可以看到Storm正在調試堆棧跟蹤中的文件,但它並未映射到我的IDE中的文件。PHP風暴調試創建空的服務器定義

當我檢查Storm中的服務器配置時,它創建了一個無名服務器定義。如果我完成了這個定義,選擇它並再次嘗試調試,Storm只是創建另一個空的服務器定義。

我已經使用Storm成功調試了很多年,所以我真的不確定發生了什麼事情導致了這種行爲。任何幫助,將不勝感激。

謝謝。

+0

**使用的Web服務器軟件?**是的 - 該字段必須填寫(這是一個必填字段)..所以它*有點「有道理」,它創造新的一個。 – LazyOne

+0

Nginx。當對話框出現時,服務器名稱字段實際上不可編輯。 – user1493194

+0

*「Nginx」。*懷疑。您需要在服務器配置級別修復它。基本上,IDE檢查'$ _SERVER [「SERVER_NAME」]的值(以PHP的形式)。檢查這個線程(最後幾篇文章)關於如何:http://devnet.jetbrains.com/message/5494835#5494835 – LazyOne

回答

4

所以..你的網絡服務器軟件是nginx

此問題必須在nginx配置文件中解決。問題是:nginx不提供$_SERVER["SERVER_NAME"](用PHP術語說)的值,PhpStorm使用該值來確定在調試期間使用的配置。

檢查這個線程(最後幾帖)關於如何解決它:http://devnet.jetbrains.com/message/5494835#5494835

喜歡的東西fastcgi_param SERVER_NAME $host;應該做的工作。

+0

我同意 - fastcgi_param SERVER_NAME $ hostname; - 根據Nginx文檔應該工作。不過,我嘗試過,但仍然沒有回到服務器名稱在PHP中。我現在已經在服務器塊中重新指定了server_name。 – user1493194

0

我設置了一個「server_name xxx.foo.com;」屬性在nginx配置文件中解決這個問題