搭建參考我之前的windows搭建方法 --
在雲主機端測試apache Apollo tcp端口是61613,通過127.0.0.1和服務器IP地址可以訪問,通過電腦PC端自己編寫mqtt客戶端卻無法訪問??
一開始參考網上的方法:
<web_admin bind="http://127.0.0.1:61680"/>
<web_admin bind="https://127.0.0.1:61681"/>
<connector id="tcp" bind="tcp://0.0.0.0:61613" connection_limit="2000"/>
<connector id="tls" bind="tls://0.0.0.0:61614" connection_limit="2000"/>
<connector id="ws" bind="ws://0.0.0.0:61623" connection_limit="2000"/>
<connector id="wss" bind="wss://0.0.0.0:61624" connection_limit="2000"/>
做如下的設置: 綁定自己本機的IP地址,到最後成功的時候,你發現自己的內網IP變成了一個隨機的公網IP(119.136.145.232),這樣的綁定只針對自己本地模擬服務器綁定有效,或者換句話說,你在雲主機上執行有效,在其他的局域網的pc上無法進行訪問的。
<web_admin bind="http://127.0.0.1:61680"/>
<web_admin bind="https://127.0.0.1:61681"/>
<connector id="tcp" bind="tcp://192.168.68.131:61613" connection_limit="2000"/>
<connector id="tls" bind="tls://0.0.0.0:61614" connection_limit="2000"/>
<connector id="ws" bind="ws://0.0.0.0:61623" connection_limit="2000"/>
<connector id="wss" bind="wss://0.0.0.0:61624" connection_limit="2000"/>
測試結果:仍然是遠程主機一直拒絕連接!!!因爲這個設置只允許特定的IP(148.70.47.75)對服務器進行連接訪問。
而後,我進入雲服務器控制檯,對服務器的安全組進行設置,一鍵開通了所有的安全組,並且添加了相應的tcp協議端口
測試結果:仍然是遠程主機一直拒絕連接!!!,而後我將設置改回來,允許有的IP地址都可訪問我的雲主機上搭建的mqtt服務器
<web_admin bind="http://127.0.0.1:61680"/>
<web_admin bind="https://127.0.0.1:61681"/>
<connector id="tcp" bind="tcp://0.0.0.0:61613" connection_limit="2000"/>
<connector id="tls" bind="tls://0.0.0.0:61614" connection_limit="2000"/>
<connector id="ws" bind="ws://0.0.0.0:61623" connection_limit="2000"/>
<connector id="wss" bind="wss://0.0.0.0:61624" connection_limit="2000"/>
測試通過!!!!
就這樣,完成了通過mqtt服務器進行的一個數據轉發的過程。