Linux服務(wù)器80端口無法訪問的解決方案
Linux服務(wù)器80端口無法訪問問題
在Linux操作系統(tǒng)下(Ubuntu)撰寫好的服務(wù)器程序在連接時經(jīng)常會出現(xiàn)80端口無法訪問,卡死在accept之前的情況,如圖下圖所示。
通常按以下步驟排查測試大概率會解決端口無法訪問的問題。
排查步驟
- 連接服務(wù)器的用戶
- 確定是否開發(fā)80端口
- 確定訪問地址地址是否正確
- 測試結(jié)果
- 解決程序只能運行一次問題
一、 連接服務(wù)器的用戶
1、通常服務(wù)器有root管理員,和其他個人創(chuàng)建用戶。但是root權(quán)限非常高,在使用時要謹(jǐn)慎謹(jǐn)慎再謹(jǐn)慎!
2、root:root用戶可以使用服務(wù)器端口范圍:1~100端口(尤其是80端口項目,當(dāng)然這是root特有的)
3、個人創(chuàng)建用戶:可以使用除100端口以內(nèi)的其他端口。
所以在運行服務(wù)器程序時先切換到root用戶一般能避免一些問題。(下列都是在root環(huán)境下運行的命令)
二、確定是否開放80端口
1、查看機器所開放的所有端口號:
firewall-cmd --list-ports
2、在沒有80/tcp端口的情況下添加端口號:
firewall-cmd --zone=public --add-port=80/tcp
3、重啟防火墻注意一定要重啟防火墻,不然的話你添加的端口不生效,即使再去查看你的端口,依舊不顯示
firewall-cmd --reload
在重啟防火墻以后再查看端口號如下圖,說明80端口已經(jīng)打開
三、確定訪問地址地址是否正確
我們訪問端口的時候可以分為這兩種情況:
1.服務(wù)器ip訪問:地址為=服務(wù)器ip:端口號
例如:http://192.168.245.xxx:端口號/
2.域名地址訪問:域名地址:端口號
例如:http://jcenter.club:端口號/
(注意冒號為英文狀態(tài)下,而且:80也可以省略)
四、測試結(jié)果
通過測試代碼可以讀取http請求,之后對其做出解析
五、解決程序只能運行一次問題
通常情況下我們寫的mini服務(wù)器通過外網(wǎng)瀏覽器連接時響應(yīng)一次以后仍無反應(yīng),此時我我們要查看當(dāng)前進(jìn)程PID,要將其殺死后程序才能繼續(xù)運行。
1.查看當(dāng)前進(jìn)程PID
ps aux | grep -i http(程序名)
2.殺死當(dāng)前進(jìn)程
kill -9 PID(上圖PID為5858)
將進(jìn)程刪除后重新運行即可通過外網(wǎng)瀏覽器重新連接~
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Linux下制作給ARM開發(fā)板使用的文件系統(tǒng)
今天小編就為大家分享一篇關(guān)于Linux下制作給ARM開發(fā)板使用的文件系統(tǒng),小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧2018-12-12Centos 7.4中的遠(yuǎn)程訪問控制的實現(xiàn)方法
這篇文章主要介紹了Centos 7.4中的遠(yuǎn)程訪問控制的實現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-11-11Linux內(nèi)核私闖進(jìn)程地址空間并修改進(jìn)程內(nèi)存的方法
這篇文章主要介紹了Linux內(nèi)核私闖進(jìn)程地址空間并修改進(jìn)程內(nèi)存的方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-10-10如何在Linux環(huán)境為用戶添加sudo權(quán)限
這篇文章主要介紹了如何在Linux環(huán)境為用戶添加sudo權(quán)限,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-09-09