2014-04-24 57 views
1

在將Web應用程序放到生產服務器上之前,我有一臺Linux開發和測試服務器,用於爲我的客戶端創建Web應用程序。阿帕奇的配置讓我有「主目錄」的配置,所以每一個項目都有「/家庭/ nameproject /的public_html/」目錄,可見的URL http://nameserver.org/~nameproject
我的工作使用框架,並在url沒有index.php使用.htaccess文件和$ config ['url_suffix'] ='';應用/ config.php文件
遠程服務器
所以:Debian的
的Apache:2.2.16
PHP:5.3.3了Suhosin貼片v0.9.32.1
的XDebug版本:2.1.0
本地
IDE:PhpStorm 7.1
IDE重點:PHP STORM
服務器配置: enter image description here
服務器配置映射enter image description here

我跟着引導Zero-configuration Web Application Debugging with Xdebug and PhpStorm,當我開始調試會話,無論頁面我加載,調試器在我PhpStorm啓動,並嘗試打開該文件指數.PHP
顯然,正如我前面提到的,我還沒有在任何URL的index.php ...
方案:點擊在收聽調試器連接按鈕,設置該文件中的breackpoint:在「forgot_password」功能「應用程序/控制器/ auth.php」,並在服務器上運行的調試器,
截距該請求的PhpStorm並讓我永遠此屏幕 incoming connection 恕我直言請求URI = /〜nameproject/auth /中forgot_password無法找到「文件路徑服務器」的關係必須是/家庭/ nameproject /的public_html /應用/控制器/auth.php「而不是=/home/nameproject/public_html/inde x.php
如何調用控制器PHP文件而不是index.php的一些想法???PhpStom + XDebug + Codeigniter(MVC)

+2

「服務器配置」屏幕截圖中的「主機」字段是錯誤的 - 它應該只是主機名而不是URL。我的建議 - 刪除任何現有的「PHP |服務器」並使用零配置方法 - IDE將幫助設置它。在您將它設置正確後,我們可以進一步觀察。但是現在IDE通過詢問一個路徑到'index.php'(沒有正確設置路徑映射,所以它在當前正在運行的文件,即index.php中停止),正確運行(第三屏幕截圖) – LazyOne

+0

如果我刪除了現有的PHP-> Server配置(沒有更多的配置),行爲是一樣的....來自Xdebug的連接問我是否要調試index.php文件...但令人難以置信的是!如果我點擊***「接受」***,它會自動將index.php映射到文件auth.php !!!偉大的現在它工作....我點擊忽略按鈕,因爲我認爲我開始從/ home/public_html/index.php我的調試! –

回答

3

因此您的意見..這個問題似乎是在「主機」字段的不正確的值在Settings | PHP | Servers(第一截圖) - 它應該只是域名/主機名,而不是實際的URL(以「服務器比較命名」提交的第三截圖) - 只是刪除/~***一部分。路徑映射似乎設置正確。

或者 - 只是刪除任何條目Settings | PHP | Servers和使用零配置方法 - IDE將有助於建立它的第一個成功的調試連接。

至於第三屏幕截圖 - IDE的行爲正確。由於沒有正確的路徑映射(具有正確的服務器/主機名),PhpStorm在當前正在運行的腳本的第一行中斷,即index.php(進入您的MVC應用程序的入口點)。一旦建立了正確的路徑映射,IDE將僅停止在斷點上(除非它符合「Settings | PHP | Debug | Xdebug」部分中的某些條件)。