##這兩天在阿里雲的CentOS 7上寫了個TCP服務器,在Windows客戶端進行訪問出現了一些問題,解決方案
1.雲服務器端口問題
- 首先需要配置安全規則
登錄服務器實例->打開實例列表->找到對應實例->更多->網絡和安全組->安全組配置->配置規則->添加安全組規則---具體操作百度搜索
- 使用Xshell連接雲服務器
- 查看防火牆狀態:
systemctl status firewalld
- 打開防火牆:
systemctl start firewalld 沒有任何提示即開啓成功
- 查詢端口號是否暢通:
firewall-cmd --query-port=666/tcp 提示no表示未開
- 永久開啓端口號:
firewall-cmd --add-port=666/tcp --permanent 提示success表示成功
- 生效配置文件:
firewall-cmd --reload
- 再次使用:
firewall-cmd --query-port=666/tcp
查詢 - 移除端口號:
firewall-cmd --permanent --remove-port=666/tcp、
還可以在windwos下使用telnet +ip + 端口 測試,如果什麼都不顯示,表示成功,顯示正在連接表示失敗
windows下的telnet打開方式:控制面板->程序和功能->打開或關閉Windows功能,找到telnet客戶端和服務端,打開就ok。
2.服務器亂碼問題
在移植代碼跨平臺時,經常需要在windows下編寫代碼,然後移植到服務器上,但是VS19使用的中文編碼格式時gb3233,而linux使用的是utf-8,服務器端的日誌信息會亂碼。
有兩種解決方案:
1.在vs:視圖->工具欄->自定義->命令->菜單欄->文件->找到高級保存選項->在文件中打開->設置就行
2.在linux解決文件編碼格式就行,
iconv -c -f utf-8 -t latin1 test.txt > newtest.txt