CentOS 7: apache 2.4? 基于OneinStack部署? 默認(rèn)配置文件/usr/local/apache/conf目錄下
1、修改監(jiān)聽的IP和Port,默認(rèn)80端口
[root@carlcompute conf]# service httpd start
Redirecting to /bin/systemctl start? httpd.service
[root@carlcompute conf]# ss -tnl | grep 80
LISTEN? ? 0? ? ? 128? ? ? ? :::80? ? ? ? ? ? ? ? ? ? ? :::*
Listen [IP:]PORT???????????????????? IP可以省略,表示監(jiān)聽所有IP地址,Listen 可以出現(xiàn)多次,修改后必須restart。
例如加上 Listen 本機(jī)IP:8080? 瀏覽器中輸入本機(jī)IP:8080,一樣可以訪問
2、持久連接
/usr/local/apache/conf/extra/httpd-default.conf
Persistent Connection:連接建立,每個資源獲取完成后不會斷開連接,而是繼續(xù)等待其它的請求完成;
如何斷開?
1>數(shù)量限制:100? 默認(rèn)配置
2>時間限制:可配置
副作用:對并發(fā)訪問量較大的服務(wù)器,持久連接功能會使用有些請求得不到響應(yīng);
折衷:使用較短的持久連接時間;
httpd-2.4 支持毫秒級持久時間;
KeepAlive On|Off??? 是否開啟
MaxKeepAliveRequests #?????? 數(shù)量限制
KeepAliveTimeout # ? ?? 時間限制
測試:
telnet? 192.168.88.125
GET / ? HTTP/1.1
Host: 192.168.88.125
3、MPM
Multipath Process Module:多道處理模塊
prefork, worker, event
httpd-2.2不支持同時編譯多個模塊,所以只能編譯時選定一個;rpm安裝的包提供三個二進(jìn)制程序文件,分別用于實現(xiàn)對不同MPM機(jī)制的支持;確認(rèn)方法:
# ps aux? | grep httpd
yum install 安裝后默認(rèn)為/usr/sbin/httpd, 其使用prefork? 查看靜態(tài)模塊列表 httpd -l
# httpd -M? 查看靜態(tài)編譯及動態(tài)裝載的模塊
prefork的配置:
StartServers? ? ? 8?? 服務(wù)啟動時啟動的服務(wù)器進(jìn)程數(shù)
MinSpareServers? ? 5?? 最小空閑進(jìn)程數(shù)
MaxSpareServers? 20? 最大空閑進(jìn)程數(shù)
ServerLimit? ? ? 256? 為MaxClients準(zhǔn)備的在其生命周期內(nèi)所允許的最大值
MaxClients? ? ? 256? 服務(wù)器端最多允許啟動多少服務(wù)器進(jìn)程(最多只允許256個客戶端)
MaxRequestsPerChild? 4000 ? 一個服務(wù)器進(jìn)程最多可以響應(yīng)多少次請求,達(dá)到上限后Kill掉從新生成
worker的配置
StartServers? ? ? ? 4?? 服務(wù)器啟動時啟動多少進(jìn)程
MaxClients? ? ? ? 300??? 最大啟動的線程數(shù)
MinSpareThreads? ? 25?? 最小空閑線程數(shù)
MaxSpareThreads? ? 75?? 最大空閑進(jìn)程數(shù)
ThreadsPerChild? ? 25?? 每個進(jìn)程所能夠啟動的線程數(shù)
MaxRequestsPerChild? 0 ? ?? 表示不作限制
4.DSO? 配置指令實現(xiàn)模塊加載
LoadModule模塊路徑可使用相對地址,相對于ServerRoot(/etc/httpd)指向的路徑而言;
5.定義'Main' server的文檔頁面路徑
DocumentRoot???? 文檔路徑映射:DocumentRoot指向的路徑為URL路徑的起始位
6.站點訪問控制,可基于兩種類型的路徑指明對哪些資源進(jìn)行訪問控制
7.日志設(shè)定
8.路徑別名