本地 windows10 日常開發使用的環境 裝有phpstorm遠端主機 linux 伺服器 裝php-fpm/nginx等所有開發依賴環境
本地可以訪問遠端主機 但遠端主機無法訪問本地
遠端除錯(remote debug)在windows本地環境下 除錯遠端伺服器(linux)上的**
之前一直認為 php-xdebug 的擴充套件的remote_debug 只能夠支援本地環境下除錯
其實原因是沒有準備好除錯環境 (遠端的伺服器上無法訪問到本地的除錯埠 需要通過ssh隧道埠對映 建立連線)
其client 和 server 的對應關係如下圖![](https://pic.w3help.cc/d80/ef7cc2af6c684208854492c9ec972.jpeg)
本地的phpstorm 在開啟斷點服務後 會開啟乙個的除錯服務 (預設埠為 9000)
用於與伺服器進通過dbgp行通訊
但本地環境是處於區域網內 伺服器無法通過ip 直接訪問ide的除錯埠
步驟1. 遠端主機上安裝 php_xdebug 擴充套件
2)之前安裝依賴
yum install php-devel autoconf automake3)解壓
tar -xvzf xdebug-2.9.0.tgz4)執行編譯安裝
cd xdebug-2.9.02. 修改配置檔案php.ini 並重啟php-fpmphpize
./configure
make && make install
![](https://pic.w3help.cc/7e9/16bb88d7192e19e7a15f994169aba.jpeg)
[xdebug]然後檢視phpinfo資訊 檢查配置是否生效zend_extension=/webser/soft/php72/lib/php/extensions/xdebug.so
xdebug.remote_enable=1
xdebug.remote_port=9001
xdebug.remote_host=127.0.0.1
xdebug.remote_log=/var/log/php-xdebug.log
xdebug.idekey="
phpstorm
"
3. 本地與遠端主機建立ssh隧道》埠轉移 使遠端主機能夠訪問到ide的9001埠
遠端主機上鍵入telnet命令# telnet 127.0.0.1 9001 檢查是否能夠訪問9001 埠
(這裡因為埠衝突 預設9000 改為9001 php.ini 與 phpstorm配置 保持一致)
4. phpstorm debug配置
新增server 並配置ide key (需與php.ini 中保持一致)
最後點選綠色的甲蟲和**筒 開啟除錯 並打上斷點
run (執行) > break at first line in php scripts 設定php斷點在指令碼第一行
5. 安裝xdebug_helper 或者 在請求中攜帶 idekey 即可觸發除錯
擴充套件: 當我們在需要再命令列模式中啟用xdebug 時 可以通過以下方式 配置session_key
## when running the script from面板使用:the command line
## you need to
setan environment variable, like:
linux 環境中:
export xdebug_config="
idekey=session_name
"php myscript.php
windows 環境中:
set xdebug_config="
idekey=session_name
"
左側
綠色三角形 :resume program
,表示將繼續執行,直到下乙個中斷點停止。
紅色方形 :stop
,表示中斷當前程式除錯。
上方
第乙個圖形示 :step over
,跳過當前函式。
第二個圖形示 :step into
,進入當前函式內部的程式(相當於觀察程式一步一步執行)。
第三個圖形示 :force step into
,強制進入當前函式內部的程式。
第四個圖形示 :step out
,跳出當前函式內部的程式。
第五個圖形示 :run to cursor
,定位到當前游標。
參考:
遠心鏡頭的遠心度
不同廠家的遠心鏡頭消除透視誤差的能力也有差異,這是因為遠心度不同。遠心度定義為主光線與光軸間的夾角 如圖所示。另外,大多數工程師對景深和遠心度有誤解,認為遠心鏡頭的景深比普通鏡頭大。但前幾期我們專門討論過景深,知道景深只與瀰散斑直徑 鏡頭fno.放大倍率相關,與遠心度無關。遠心鏡頭優點 1 最突出特...
《方與圓》 丁遠峙
方與圓 丁遠峙 2012年01月15日 全國最暢銷的人文書之一 方 就是做人的正氣,具備優秀的品質。圓 就是處事老練,圓通,善用技巧。做人就必須方外有圓,圓中有方,外圓而內方。乙個人要幹出一番事業,要真正懂得為人處世,要取得生活快樂,最重要的首先要具備優秀的品質。乙個人的成功主要依靠什麼?往往很大程...
Socket與ServerSocket遠端桌面
目的 通過socket與socketserver的通訊實現遠端監控 首先,在serversocket 被監控端 一直截圖傳送到socket。再到socket 客戶端 中不斷接收截圖內容並展示出來。如下 伺服器 public class remoteserver catch ioexception e...