安裝 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 協議》,轉載必須註明作者和本文連結