這是一份兒PHPer須要的遠程開發環境(不依賴Windows,擁抱Linux)!

我的博客同步文章 https://mr-houzi.com/2019/10/...
通常狀況,開發者多使用Windows系統,PHPStorm、VSCode等軟件讓咱們離不開Windows,可是,可是多數開發者更傾向於在Linux上部署環境。那麼這一份教程就誕生了。(MacOS用戶能夠繞行)

工具

  • PHPStorm
  • Ubuntu 16.04

準備工做

在Windows系統上安裝PHPStorm和VM虛擬機,在虛擬機中安裝Ubuntu系統。php

在Ubuntu安裝lnmp(Linux+Nginx+MySQL+PHP)集成環境linux

wget http://soft.vpser.net/lnmp/lnmp1.6.tar.gz -cO lnmp1.6.tar.gz && tar zxf lnmp1.6.tar.gz && cd lnmp1.6 && ./install.sh lnmp

遠程部署代碼

打開PHPStorm,選擇Create New Project from Existing Files瀏覽器

選擇從遠程服務器ftp同步項目服務器

輸入項目名,並選擇要同步到本地的項目路徑app

自動上傳操做選擇以下,當你Ctrl+S時,PHPStorm會幫你上傳當前修改的文件到服務器。這樣會至關方便。工具

選擇新建遠程服務器spa

填寫項目名,Type選擇SFTP,填寫服務器IP、用戶名、密碼以及遠程項目所在的路徑。.net

//linux下查看ip命令(不是Windows的ipconfig)
ghost@ghost-virtual-machine:~$ ifconfig

直接點finish,PHPStorm會自動同步遠程服務器的代碼。debug

遠程debug

安裝xdebug擴展

下載、編譯xdebug3d

wget http://www.xdebug.org/files/xdebug-2.2.3.tgz
tar xzf xdebug-2.2.3.tgz
cd xdebug-2.2.3
/usr/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config
make
make install

查看php安裝路徑下的lib 庫目錄是否生成了xdebug.so文件。(個人目錄:/usr/local/php/lib/php/extensions/xdebug.so)

而後配置/usr/local/php/etc/php.ini文件,須要注意的是xdebug是zend擴展,zend_extension= "xdebug.so",而不是extension= "xdebug.so"

[xdebug]
zend_extension= "xdebug.so"

xdebug.profiler_enable = on
xdebug.default_enable = on
xdebug.trace_output_dir="/tmp/xdebug"
xdebug.trace_output_name = trace.%c.%p
xdebug.profiler_output_dir="/tmp/xdebug"
xdebug.profiler_output_name="cachegrind.out.%s"

xdebug.remote_enable =1
xdebug.remote_handler = "dbgp"
xdebug.remote_host = 10.0.100.236 //本機的ip,不是虛擬機或者遠程服務器的ip
xdebug.remote_mode = "req"
xdebug.remote_port = 9001

若是不知道本機的ip或本機爲動態ip,須要加入xdebug.remote_connect_back,將其設置爲1,此時xdebug.remote_host會失效。

PHPStorm中配置xdebug

首先,設置端口,此端口要與上文配置xdebug.remote_port保持一致。

配置遠程服務器,勾選Use path mappings,將本地文件與服務器文件相映射。

配置DBGP Proxy,輸入遠程服務器的ip和端口,IDE key填寫爲PHPSTORM

添加debug配置,選擇剛剛建立的Server

選中debug配置,在代碼中打斷,點擊小蟲子開始調試。

PS:若是使用虛擬機中Linux,想要在本機經過瀏覽器訪問虛擬機中的項目,須要在Nginx中將項目ip設置爲虛擬機的ip,而不是127.0.0.1。若是多個項目怎麼辦呢?IP相同,用不一樣的端口號區別不一樣的項目。

相關文章
相關標籤/搜索