A Patchy Server = apache php
Apache HTTP Server(簡稱Apache)是Apache軟件基金會的一個開放源代碼的網頁服務器軟件。 html
事先建立進程; java
按需維持適當的進程; python
模塊塊設計,核心比較小,各類功能都模塊添加(包括php); linux
支持運行配置,支持單獨編譯模塊 apache
支持多種方式的虛擬主機配置; 服務器
虛擬主機: tcp
基於IP的虛擬主機; 開放源代碼
基於端口的虛擬主機; 設計
基於域名的虛擬主機;
支持https協議 (mod_ssl);
支持用戶認證;
支持基於IP或主機名的ACL;
支持每目錄的訪問控制;
支持URL重寫;
httpd受SElinux控制,配置前須要設置SElinux關閉狀態。
/usr/sbin/httpd(MPM: prefork)
httpd: root, root (master process)
httpd: apche, apache (worker process)
/etc/rc.d/init.d/httpd
Port: (80/tcp), (ssl: 443/tcp)
/etc/httpd: 工做根目錄,至關於程序安裝目錄
/etc/httpd/conf: 配置文件目錄
主配置文件:httpd.conf
/etc/httpd/conf.d/*.conf
/etc/httpd/modules: 模塊目錄
/etc/httpd/logs --> /var/log/httpd: 日誌目錄
日誌文件有兩類:訪問日誌access_log,錯誤日誌:err_log
/var/www/
html
cgi-bin
cgi: Common Gateway Interface
Client --> httpd (index.cgi) --> Spawn Process (index.cgi) --> httpd --> Client
perl, python, java, (Servlet, JSP), php
fastcgi:
MPM: Multi Path Modules