Toggle main menu visibility
下載輕鬆架
套件下載
使用手冊
發問討論
網站地圖
:::
登入
登入
帳號
密碼
登入
:::
所有書籍
「OB2D主機架設」目錄
MarkDown
6. 修改 source.list並進行套件更新
1. 下載及安裝
2. 讓 ROOT 可以從 pietty 登入
3. 優化 vi
4. 讓ll可以使用
5. 修改防火牆
6. 修改 source.list並進行套件更新
7. Apache的設定及優化
7-1 Prefork 模式
7-1-1 修改 php.ini
7-2 Worker 模式
7-3 Event 模式
7-4 修改Apache 設定
7-5 啟動使用者家目錄及PHP功能
7-6 啟用HTTP2
7-7 加入SSL
7-8 跨域或設定可被崁入網站
7-9 修改phpmyadmin 連線範圍
8. 安裝Nginx(非必須)
8-1 安裝PHP-FPM
8-2 啟用使用者目錄
8-3 安裝 MariaDB
8-4 網站伺服器效能優化
9. 修改mysql密碼
9-1 優化MySQL
9-2 讓資料庫可以讓別的主機連線
10. 修改網卡及ip等資訊
11. 設定IPv6
12. 關閉 mail relay
13. 自動時間校正
14. 加入monit監控
15. 預設使用者目錄內容
16. 大量建立帳號
17. 修正 /etc/rc.local 無效問題
18. 異地備份
19. 安裝docker
20. 安裝Jitsi meet
22. 漂亮終端機
23. 常用指令
7-1 Prefork 模式
OB2D主機架設 ======== ### 開啟Apache狀態功能 1. 先啟用狀態模組(其他模組就順便啟用) ```bash a2enmod mod_status rewrite ``` 2. 修改設定檔 ```bash vi /etc/apache2/mods-enabled/status.conf ``` 3. 加入可以觀看態結果的網域 ```bash
SetHandler server-status Require local Require ip 120.115.3.0/24
``` 4. 最後重新啟動Apache ```bash systemctl restart apache2 ``` 5. 執行(每10秒自動更新) ```bash http://網址/server-status?refresh=10 ``` ### 放大限制(主機多的時候) 1. 編輯設定檔 ```bash vi /etc/apache2/envvars ``` 把其中limit的註解取消 ```bash APACHE_ULIMIT_MAX_FILES='ulimit -n 65536' ``` 重啟網站 ### 減少主機資訊外漏 1. 網站資訊檢測:
2. 編輯 /etc/apache2/conf-enabled/security.conf ```bash vi /etc/apache2/conf-enabled/security.conf ``` 3. 找出底下兩個設定項目,並修改其值 ```bash ServerTokens Prod ServerSignature Off ``` 4. 重啟網站 ```bash service apache2 restart ``` ### Apache常用指令 1. 計算 Apache2 總記憶體使用量 ```bash ps aux | grep apache2 | awk '{ total += $6; } END { print total/1024"MB" }' ``` 2. 計算 Apache2 總 CPU 使用量 ```bash ps aux | grep apache2 | awk '{ total += $3; } END { print total"%" }' ``` 3. 要查看當前正在運行的Apache進程數(processes),請使用此命令 ```bash ps faux|grep apache2|wc -l ``` 4. 查看在所有進程下運行的Apache線程總數(threads), MaxRequestWorkers的設定值需大於此值 ```bash ps -eLf|grep apache2|wc -l ``` 5. 查看在特定Apache進程(processes)下運行的線程數(threads) ```bash ps -eLf|grep $程序編號 |wc -l ``` 6. 查看當前的連接數狀況: ```bash netstat -nat|awk '{print awk $NF}'|sort|uniq -c|sort -n ``` 7. linux下獲取佔用CPU資源最多的10個進程,可以使用如下命令組合: ```bash ps aux|head -1;ps aux|grep -v PID|sort -rn -k +3|head ``` 8. linux下獲取佔用內存資源最多的10個進程,可以使用如下命令組合: ```bash ps aux|head -1;ps aux|grep -v PID|sort -rn -k +4|head ``` 9. 列出系統上最耗費記憶體的程式: ```bash ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%mem | head ``` 10. 前 10 個最耗費記憶體的行程: ```bash top -b -o +%MEM | head -n 17 ``` 11. 找出最耗費 CPU 資源的行程 : ```bash top -b -o +%CPU | head -n 17 ``` 12. 查看和Apache相關的連線 ```bash netstat -ae|grep www-data ``` 13. 可用以下指令查看目前連線數最高的IP ```bash netstat -nat|grep ":80"|awk '{print $5}' |awk -F: '{print $1}' | sort| uniq -c|sort -n ``` ### 查看Apache2使用模式 1. 先查看一下Apache 資訊 ```bash apache2 -V ``` 2. 若出現類似以下訊息: ```bash [Mon Oct 16 22:34:47.936456 2017] [core:warn] [pid 9405] AH00111: Config variable ${APACHE_RUN_DIR} is not defined apache2: Syntax error on line 80 of /etc/apache2/apache2.conf: DefaultRuntimeDir must be a valid directory, absolute or relative to ServerRoot ``` 3. 則執行以下指令,重新匯入Apache環境變數: ```bash . /etc/apache2/envvars ``` 4. 接者再執行原本指令,應該就會看到正確信息,如: ```bash Server version: Apache/2.4.25 (Debian) Server built: 2017-09-19T18:58:57 Server's Module Magic Number: 20120211:68 Server loaded: APR 1.5.2, APR-UTIL 1.5.4 Compiled using: APR 1.5.2, APR-UTIL 1.5.4 Architecture: 64-bit Server MPM: prefork threaded: no forked: yes (variable process count) Server compiled with.... -D APR_HAS_SENDFILE -D APR_HAS_MMAP -D APR_HAVE_IPV6 (IPv4-mapped addresses enabled) -D APR_USE_SYSVSEM_SERIALIZE -D APR_USE_PTHREAD_SERIALIZE -D SINGLE_LISTEN_UNSERIALIZED_ACCEPT -D APR_HAS_OTHER_CHILD -D AP_HAVE_RELIABLE_PIPED_LOGS -D DYNAMIC_MODULE_LIMIT=256 -D HTTPD_ROOT="/etc/apache2" -D SUEXEC_BIN="/usr/lib/apache2/suexec" -D DEFAULT_PIDLOG="/var/run/apache2.pid" -D DEFAULT_SCOREBOARD="logs/apache_runtime_status" -D DEFAULT_ERRORLOG="logs/error_log" -D AP_TYPES_CONFIG_FILE="mime.types" -D SERVER_CONFIG_FILE="apache2.conf" ``` 5. 從第7行可以得知,目前跑的是 prefork 模式。因此,開啟對應設定檔編輯之: ```bash vi /etc/apache2/mods-available/mpm_prefork.conf ``` 6. 完整說明請參考:
:::
書籍目錄
展開
|
闔起
快速登入
所有討論區
Tad Search 資料查詢
懶人框架討論區
實戰PHP7+MySQL
XOOPS輕鬆架快速上手
校園網站輕鬆架一般討論區
Booking Helper 預約助手
es_stud_sign 班級報名
es charge 學生收費管理
E-Stud import 學生名冊管理
es_after_school 課後照顧報名
es_exam 學生作業繳交
ES_panel 校務行政面板
es_timetable 課表
ES_youtube 本校影音
info_whats 網路設備記錄
jill booking 場地預約
jill_notice 臨時公告
jill query 簡易查詢
jill receipt 領據填報
kw club 社團報名
kw device 設備借用管理系統
ntpc_oprnid 新北市 OpenID 登入
TinyD嵌入內容模組
ugm contact us 聯絡我們
ugm page 自訂頁面
ugm table 萬用表格
Yaoh Servicelearning 服務學習管理系統
dummy 自訂模組
soone_submit 投稿模組
Tad Adm 站長工具箱
Tad Assignment 作業上傳展示模組
Tad Blocks 進階區塊管理
Tad Book3 線上書籍
Tad Cal 行事曆
Tad Cbox 即時留言簿
Tad Discuss 討論區模組
Tad Embed 崁入模組
Tad Evaluation 評鑑檔案管理
Tad Form 萬用表單模組
Tad FAQ 常見問答
Tad Google 相簿
Tad Gallery 電子相簿
Tad Guide 安裝精靈
Tad Honor 榮譽榜
Tad idioms 背背成語
Tad Link 好站連結
Tad Login 快速登入
Tad Lunch3 午餐資訊
Tad Lunch2 營養午餐公告
Tad Meeting 會議系統
Tad Merage 線上合併套印
Tad News 本站消息
Tad Player 影音播放
Tad RSS 友站新聞
Tad Repair 維修通報
Tad SiteMap網站地圖
Tad Timeline 重要紀事
Tad Themes 佈景管理
Tad Tools 工具包
Tad TV 直播電視
Tad Uploader 檔案上傳模組
Tad Users 大量會員管理
Tad Web 多人網頁模組
MyTabs 我的頁籤
Random Quote 隨機小語
LogCounterX 網站流量統計
Yaoh light 多區塊多層次跑馬燈模組
校園網站輕鬆架功能建議區
佈景討論區
即時留言簿
search
進階搜尋
計數器
今天:
昨天:
總計: