iOS實現XMPP通訊(一)搭建Openfire
阿新 • • 發佈:2021-10-11
安裝Openfire
- Openfire官網下載地址:https://igniterealtime.org/downloads/ (也是Spark客戶端的下載地址)
Openfire下載並安裝後,開啟系統偏好設定,底部會出現Openfire
以上啟動openfire後,預設會去監聽9090埠。由於openfire沒有提供關閉伺服器的指令碼,如果需要關閉openfire,可以用殺死程序的方式間接關閉openfire,具體做法:
sudo lsof -i:9090 //檢視埠號所在的程序資訊(PID是程序號)
kill -9 PID //殺掉指定程序PID,釋放被佔用的埠號
以上必須用kill -9。這裡對kill的用法做個科普:
kill命令預設的訊號是15,也就是kill -15,是優雅的退出。當使用kill -15時,系統會發送一個SIGTERM的訊號給對應的程式,通知其進行“安全、乾淨的退出”。當程式接收到SIGTERM訊號後,退出前一般會進行一些"準備工作",如資源釋放、臨時檔案清理等。準備工作做完了,再進行程式的終止,但如果在"準備工作"進行過程中,遇到阻塞或者其他問題導致無法成功,那麼程式可以選擇忽略該終止訊號。這就是為何有時kill命令沒法殺死應用程式的原因,因為SIGTERM(15)訊號是可以被阻塞和忽略的。
像很多java程式,傳送kill命令,程式不會立即退出,通常要等個幾十秒之後才會退出。這時我們可以使用kill -9強制殺死的命令,系統會發出SIGKILL訊號,程式接收到該訊號後立即退出,不能被阻塞或者忽略。
注意:後來發現./openfire.sh開啟openfire後臺伺服器後,是可以用快捷鍵control+C關閉的。
- 進入系統偏好設定->Openfire,檢視Openfire的開啟狀態。如果沒開啟就點選Start Openfire,在綠色Running時,點選Open Admin Console,自動進入瀏覽器開啟Openfire的後臺伺服器http://localhost:9090
配置Openfire後臺伺服器
- 語言選擇:中文,點下一步。
伺服器設定:域(即伺服器名稱,使用者JID會顯示該值)填寫192.168.2.2,Server Host Name(主機名,用於登入)填寫127.0.0.1,埠按預設9090,點下一步。
資料庫設定選擇:嵌入的資料庫(Openfire自帶資料庫,不需要外部資料庫),點下一步。
配置檔案設定選擇:預設設定,點下一步。
管理員賬戶:管理員電子郵箱按預設,密碼填寫123456,點下一步完成配置。
之後點選“登入到管理介面”,輸入賬號admin,密碼123456,進入Openfire後臺管理。 - 建立使用者。點選使用者/使用者群->新建使用者,依次建立使用者名稱hong、ming、wang,密碼統一設定為123456,方便記。
之後就可以用Spark客戶端(在Openfire官網上有得下載),登入使用者賬號,新增好友進行交流了。
解除安裝Openfire
- 解除安裝Openfire的終端命令:
sudo rm -rf /usr/local/openfire
sudo rm -rf /Library/PreferencePanes/Openfire.prefPane
sudo rm -rf /Library/LaunchDaemons/org.jivesoftware.openfire.plist