PHPSTROM遠端除錯

www88xbocom17176934555發表於2021-03-22

安裝 DVWA 專案

系統環境

whippet@ubuntu:~/Desktop$ cat /etc/issue

檢視 PHP 環境是否已經安裝

whippet@ubuntu:~/Desktop$ dpkg -l | grep php

新增 PPA 源

whippet@ubuntu:~/Desktop$ sudo add-apt-repository ppa:ondrej/php

更新系統

whippet@ubuntu:~/Desktop$ sudo apt-get update

安裝 php 5.6

whippet@ubuntu:~/Desktop$ sudo apt-get install php5.6

安裝 apache 並啟動

whippet@ubuntu:~/Desktop$ sudo apt install apache2

安裝 mysql 並啟動

whippet@ubuntu:~/Desktop$ sudo apt-get install mysql-server

安裝DVWA

whippet@ubuntu:~/Desktop$ cd /var/www/html/

圖片

配置 PHPSTROM 除錯

環境條件

機器名稱 作業系統 ip 資訊 實驗環境
虛擬機器 Ubuntu 20.04.2 192.168.176.171 PHP 5.6.40
本地機器 Windows10 192.168.176.1 phpstrom

xdebug 配置

我們直接在 xdebug 的官網上尋找歷史版本^[1]^ 全域性搜尋 php 5.6

圖片

我們可以看到相較於 windows 上種類繁多的二進位制檔案,linux 只提供了原始碼檔案,需要自己進行編譯,下載原始碼之後我們複製到虛擬機器內部

whippet@ubuntu:~$ tar -xcvf  xdebug-2.5.5.tgz

圖片

xdebug 被安裝在 /usr/lib/php/20131226/

修改php.ini配置檔案,在檔案中追加以下內容

[Xdebug]

儲存之後重啟 apache 服務 sudo service apache2 restart 之後訪問 phpinfo 發現xdebug 的資訊已經顯示出來了

至此 xdebug 的相關配置就 ok 啦,接下來我們對本地的 phpstrom 進行配置

PHPSTROM 配置

首先我們從虛擬機器內,把已經安裝好的專案程式碼打包再脫下來,這是因為,有一些專案在安裝之後會對原始碼進行一定的修改,為了不出現偏差我們就把安裝好的程式碼給拖取下來。利用 PHPSTROM 開啟這個專案,並配置相關引數資訊

File -> Settings -> Languages & Frameworks -> PHP -> Debug

圖片

圖片

配置 Servers

圖片

此處要注意,需要直接指定到網站的目錄位置

配置PHP Web Application

圖片

然後我們開啟登入的 login.php ,在其中新增斷點,並設定 PHPSTROM 的監聽模組

圖片

瀏覽網站頁面,同時開啟瀏覽器的除錯外掛

圖片

我們可以看到已經跳到我們斷點的位置圖片

至此除錯的基本過程已經完成,以下的步驟屬於可做可不做,本著學習的想法,我還是把新增上吧

SSH 配置

先大致描寫一下為什麼要進行這個操作,就是為了方便對 php 檔案的修改,有時候我們想對 php 檔案進行修改,但是在本地修改之後,並不會影響遠端伺服器上的檔案,經過這樣的配置之後,本地檔案修改之後,遠端伺服器上的檔案也會同步修改。

首先,我們安裝好的 Ubuntu 虛擬機器上是並不存在 SSH 的,所以我們需要先將 Ubuntu 上的 SSH 進行配置。

# 安裝 openssh 服務

驗證一下,發現可以登入成功

開啟 PHPSTROM

新增一個 sftp 協議

圖片圖片圖片

選擇 ubuntu 上 php 的路徑位置

圖片

至此已經基本配置完成,我們來進行一下驗證
File -> Settings -> Languages & Frameworks -> PHP -> Debug

圖片

配置完成,我們修改一個檔案進行驗證一下

圖片

圖片
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...
read.douban.com/reader/column/4096...

本作品採用《CC 協議》,轉載必須註明作者和本文連結

相關文章