標籤:ble -- clu html 刪除 rom 指令碼 重載 res
httpd常見配置設定檔
/etc/httpd/conf/httpd.conf 主設定檔
/etc/httpd/conf.d/*.conf 輔助設定檔
設定檔語法檢查及重新載入設定檔
[[email protected] conf]$ httpd -tSyntax OK[[email protected] conf]$ service httpd reload重新載入 httpd:
修改監聽的IP和Port
Listen [IP:] PORT [PROTOCOL]
IP 原生IP,本機可能使用多個網卡,每個網卡可能使用多個IP,故而可以指定特定IP,不指定,預設為監聽所有IP
PORT 連接埠號碼,不可省略
PROTOCOL 特定協議,例如 https
註:Listen指令在同一檔案中,如果需要監聽多個目標,Listen可以出現多次
伺服器根目錄
DocumentRoot "/var/www/html"
ServerName www.example.com:80 # 伺服器名稱
DirectoryIndex index.html index.html.var # 網站首頁面
AddDefaultCharset UTF-8 # 預設字元集
Alias /icons/ "/var/www/icons/" # 路徑別名
持久化配置
KeepAlive Off | On # 是否開啟長串連MaxKeepAliveRequests 100 # 保持長串連最大個數KeepAliveTimeout 15 # 單個串連最長連線時間
動態載入模組
LoadModule <mod_name> <mod_path><mod_name> 模組名稱 <mod_path> 模組路徑,支援使用相對路徑,相對於ServerRoot /etc/httpd
MPM(多路處理模組)配置
查看
httpd -l # 查看靜態模組 httpd -M # 查看動態載入的模組
更換
CentOS 6/etc/sysconfig/httpd# HTTPD=/usr/sbin/httpd.worker # 注釋表示使用預設prefork工作,否則表示使用worker方式工作CentOS7/etc/httpd/conf.modules.d/00-mpm.confLoadModule mpm_worker_module modules/mod_mpm_worker.so
# 注釋或開啟相關代碼
prefork常用配置
<IfModule prefork.c>StartServers 8 # 起始開啟的子進程數MinSpareServers 5 # 最小空閑子進程數 MaxSpareServers 20 # 最大空閑子進程數ServerLimit 256 # 最大的進程數MaxClients 256 # 最大的請求並發數MaxRequestsPerChild 4000 # 每個子進程最多能處理的請求數</IfModule>
work常用配置
<IfModule worker.c>StartServers 4 MaxClients 300 # 最大的請求並發數目MinSpareThreads 25 MaxSpareThreads 75ThreadsPerChild 25 # 每個子進程能同時建立的的線程數目MaxRequestsPerChild 0 # 每個進程能處理的最大請求數目 </IfModule>
日誌配置
ErrorLog logs/error_log # 錯誤記錄檔目錄 LogLevel warn # 日誌記錄等級LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined # 日誌格式定義
%h:用戶端IP地址;
%l:Remote User, 通常為一個減號(“-”);
%u:Remote user (from auth; may be bogus if return status (%s) is 401);非為登入訪問時,其為一個減號;
%t:伺服器收到請求時的時間;
%r:First line of request,即表示請求報文的首行;記錄了此次請求的“方法”,“URL”以及協議版本;
%>s:響應狀態代碼;
%b:響應報文的大小,單位是位元組;不包括響應報文的http首部;
%{Referer}i:請求報文中首部“referer”的值;即從哪個頁面中的超連結跳轉至當前頁面的;
%{User-Agent}i:請求報文中首部“User-Agent”的值;即發出請求的應用程式;
網站存取控制可分為兩類,基於檔案路徑控制和基於URL路徑控制。
基於檔案路徑存取控制
<Directory "DocuRoot">...</Directory "DocuRoot"><FILE "">...</FILE ""><FileMatch "PATTERN">...</FileMatch "PATTERN">
基於URL路徑存取控制
<Location "">
...</Location ""><LocationMatch "">
...</LocationMatch "">
常見選項
Option Indexes # 訪問的url不存在時,返回父路徑的索引列表 Includes FollowSymLinks # 允許跟蹤連結檔案所指向的檔案 SymLinksifOwnerMatch # 僅允許跟蹤連結檔案屬主 ExecCGI # 支援CGI指令碼 MultiViews All 所有選項,除了 MultiViews None 不支援上述選項
AllowOverride no | yes 是否允許子目錄重載特性
黑名單(白名單)
Order allow, deny[ Allow | Deny ] from all example.org 10.1.2.3 10 172.20
基於使用者的存取控制
使用者認證類型
基本認證:Basic,明文發送
摘要認證:digest
虛擬使用者:僅用於訪問某服務或擷取某資源的憑證; 帳號和密碼的
儲存機制:
文字檔:.htpasswd
SQL資料庫
dbm:資料庫引擎,提供API
ldap:
配置
<Directory /> Options none AllowOverride AuthConfig AuthType Basic # 明文發送 AuthName "admin area" # 允許訪問的使用者 AuthBasicProvider file AuthUserFile /etc/httpd/conf/.htpasswd Require valid-user # 檔案中所有使用者均可訪問
Require group GROUP # 指定組
AuthGroupFile GROUP_FILE # 指定組口令檔案
</Directory>
產生認證檔案.htpasswd
htpasswd [option] passwdfile username 選項: -c:建立一個passwdfile,如果passwdfile已經存在,那麼它會重新寫入並刪除原有內容 -m:以md5的格式編碼儲存使用者的密碼資訊 -s:sha1加密使用者密碼; -D:刪除指定使用者
訪問指定網頁
[[email protected] conf]$ curl http://www.baidu.com<!DOCTYPE html><!--STATUS OK--><html> <head><meta http-equiv=content-type content=text/html;charset=utf-8><meta http-equiv=X-UA-Compatible content=IE=Edge><meta content=always name=referrer><link rel=stylesheet type=text/css href=http://s1.bdstatic.com/r/www/cache/bdorz/baidu.min.css><title>百度一下,你就知道</title></head> <body link=#0000cc> <div id=wrapper> <div id=head> <div class=head_wrapper> <div class=s_form> <div class=s_form_wrapper> <div id=lg> <img hidefocus=true src=//www.baidu.com/img/bd_logo1.png ...href=http://www.baidu.com/duty/>使用百度前必讀</a> <a href=http://jianyi.baidu.com/ class=cp-feedback>意見反饋</a> 京ICP證030173號 <img src=//www.baidu.com/img/gs.gif> </p> </div> </div> </div> </body> </html>
httpd常見配置