3C科技 娛樂遊戲 美食旅遊 時尚美妝 親子育兒 生活休閒 金融理財 健康運動 寰宇綜合

Zi 字媒體

2017-07-25T20:27:27+00:00
加入好友
LINUX Apache/MySQL伺服器故障排除攻略 01.外部無法連結時,確定本地端是否可正常連線 http://127.0.0.1 http://localhost http://Domain Name 02.只有外部連線異常     ◆確定防火牆有開啟         -查看防火牆狀態 systemctl status firewalld         -開啟防火牆並設置開機自啟 systemctl start firewalld systemctl enable firewalld             一般需要重啟一下機器,不然後面做的設置可能不會生效         -開放或限制埠             1、開放埠-使用的22埠 firewall-cmd –zone=public –add-port=22/tcp –permanent                          2、重新載入一下防火牆設置,使設置生效 firewall-cmd –reload             3、可通過如下命令查看是否生效 firewall-cmd –zone=public –query-port=22/tcp                          4、如下命令可查看當前系統打開的所有埠 firewall-cmd –zone=public –list-ports                          5、關掉剛剛打開的22埠 firewall-cmd –zone=public –remove-port=22/tcp –permanent                              6、重新載入一下防火牆設置,使設置生效 firewall-cmd –reload                              7、批量開放或限制埠 firewall-cmd –zone=public –add-port=100-500/tcp –permanent                          8、重新載入一下防火牆設置,使設置生效 firewall-cmd –reload                          9、查看當前系統打開的所有埠 firewall-cmd –zone=public –list-ports                          -開放或限制IP             1、限制IP位址訪問-限制IP為192.168.0.200的位址禁止訪問80埠即禁止訪問機器 firewall-cmd –permanent –add-rich-rule=”rule family=”ipv4″ source address=”192.168.0.200″ port protocol=”tcp” port=”80″ reject”                              2、重新載入一下防火牆設置,使設置生效 firewall-cmd –reload             3、查看已經設置的規則 firewall-cmd –zone=public –list-rich-rules                              4、解除IP地址限制 firewall-cmd –permanent –add-rich-rule=”rule family=”ipv4″ source address=”192.168.0.200″ port protocol=”tcp” port=”80″ accept”             5、重新載入一下防火牆設置,使設置生效 firewall-cmd –reload                              6、限制IP位址段-如我們需要限制10.0.0.0-10.0.0.255這一整個段的IP,禁止他們訪問 firewall-cmd –permanent –add-rich-rule=”rule family=”ipv4″ source address=”10.0.0.0/24″ port protocol=”tcp” port=”80″ reject”             7.重新載入一下防火牆設置,使設置生效 firewall-cmd –reload                              8.查看已經設置的規則 firewall-cmd –zone=public –list-rich-rules     ◆查詢連線數量(connections & sessions) 看全部: netstat -aunt | wc -l 只看 TCP: netstat -ant | wc -l 只看 UDP: netstat -aut | wa -l         显示网络统计信息 netstat -s         显示当前UDP连接状况 netstat -nu         显示UDP端口号的使用情况 netstat -apu         统计机器中网络连接各个状态个数 netstat -a | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'         显示TCP连接 ss -t -a         显示sockets摘要信息 ss -s         显示所有udp sockets ss -u -a         tcp,etcp状态 sar -n TCP,ETCP 1         查看网络IO sar -n DEV 1         抓包以包为单位进行输出 tcpdump -i eth1 host 192.168.1.1 and port 80         抓包以流为单位显示数据内容 tcpflow -cp host 192.168.1.1     ◆查看Apache当前并发访问数 netstat -an | grep ESTABLISHED | wc -l #77     ◆查看httpd进程数 ps aux|grep httpd|wc -l #21     ◆查看Apache的并发请求数及其TCP连接状态 netstat -n | awk '/^tcp/ {++S[$NF]} END {for (a in S) print a, S[a]}' #SYN_RECV 3 #TIME_WAIT 76 #ESTABLISHED 84 #SYN_SENT 2 #FIN_WAIT1 2     ◆每个ip的连接数,以及总的各个状态的连接数 netstat -n | awk '/^tcp/ {n=split($(NF-1),array,":");if(n<=2)++S[array[(1)]];else++S[array[(4)]];++s[$NF];++N} END {for(a in S){printf("%-20s %s\n", a, S[a]);++I}printf("%-20s %s\n","TOTAL_IP",I);for(a in s) printf("%-20s %s\n",a, s[a]);printf("%-20s %s\n","TOTAL_LINK",N);}'              ◆MySQL连接访问列表方法小结 SHOW PROCESSLIST; #4 rows SELECT * FROM `information_schema`.`PROCESSLIST`; #2 rows 03.本地端也無法連結時     ◆檢查配置檔案的錯誤         -使用apachectl configtest命令     ◆學會使用錯誤日誌         1 錯誤日誌格式             Apache 預設的錯誤日誌配置如下: ErrorLog logs/error_log LogLevel warn             配置錯誤日誌相對簡單,只要說明日誌檔案的存放路徑和日誌記錄等級即可。格式為:             日期和時間 錯誤等級 錯誤訊息         2 日誌記錄等級             下面著重說說日誌記錄等級,包括八個級別。             1 級英文名稱emerg ,出現緊急情況使得該系統不可用,如系統宕機等             2 級alert 英文名稱,需要立即引起注意的情況             3 級 英文名稱crit ,危險情況的警告             4級 英文名稱error ,除了emerg 、alert、crit 的其他錯誤             5級英文名稱 warn。 警告資訊             6級英文名稱 notice ,需要引起注意的情況,但不如error、warn 重要             7級英文名稱 info ,值得報告的一般訊息             8級英文名稱 debug, 由運行於debug 模式的程式所產生的訊息         3 錯誤日誌檔案舉例             錯誤日誌的格式相對靈活,並可以附加文字描述。某些資訊會出現在絕大多數記錄中,一個典型的例子是: [Wed Oct 11 14:32:52 2007] [error] [client 127.0.0.1] client denied by server configuration: /export/home/live/ap/htdocs/test         其中,第一項是錯誤發生的日期和時間;第二項是錯誤的嚴重性,LogLevel指令使只有高於指定嚴重性級別的錯誤才會被記錄;第三項是導致錯誤的IP地址;此後是資訊本身,在此例中,伺服器拒絕了這個客戶的訪問。伺服器在記錄被訪問檔案時,用的是檔案系統路徑,而不是Web路徑。錯誤日誌中會包含類似上述例子的多種型別的資訊。此外,CGI指令碼中任何輸出到stderr的資訊會作為除錯資訊原封不動地記錄到錯誤日誌中。使用者可以增加或刪除錯誤日誌的項。但是對某些特殊請求,在訪問日誌(access log)中也會有相應的記錄,比如上述例子在訪問日誌中也會有相應的記錄,其狀態碼是403,因為訪問日誌也可以定製,所以可以從訪問日誌中得到錯誤事件的更多資訊。              ◆檢查Apache伺服器模組問題         如果Apache伺服器可以啟動,但是某些功能無法實現,比如前面介紹的Webdav 功能,通常是提供這個功能的模組沒有載入,此時可以使用命令:“httpd -M”檢視模組載入情況。         它會輸出一個已經啟用的模組列表,包括靜態編譯在伺服器中的模組和作為DSO動態載入的模組。也可以使用瀏覽器訪問http://192.168.1.12/server-info/?list    

本文由jashliaoeuwordpress提供 原文連結

寫了 5860316篇文章,獲得 23313次喜歡
精彩推薦