1、下載apache軟件http://www.apache.org
2、安裝
以管理員身份進行安裝
3、設置主機名與域名
4、選擇安裝類型
5、自定義安裝路徑
6、開始安裝
7、安裝結束
8、測試:
在浏覽器的地址欄輸入localhost
httpd.conf是主配置文件,位於conf目錄中
SeverRoot
服務器根目錄(apache的安裝目錄)
示例:
ServerRoot "D:/wamp1027"
Listen 80
監聽端口
示例:
Listen 80
設置多個監聽端口
Listen 80
Listen 5000
加載功能模塊
user 用戶所屬的組名
示例:
User daemon
group 組名
示例:
Group daemon
ServerAdmin
管理員郵箱
示例:
ServerAdmin [email protected]
ServerName
設置域名(主機名)
示例:
#ServerName localhost:80
DocumentRoot
站點根目錄,主要用於在內部建議域名與目錄的映射關系
示例:
DocumentRoot "D:/wamp1027/htdocs"
域名的作用:
1、對外提供訪問(ISP 的DNS服務器完成功能)
2、對內建立域名與目錄的映射關系(只要在配置文件中使用servername與documentroot選項進行配置即可)
對目錄的相關設置
<Directory "站點根目錄">
#目錄相關配置
</Directory>
目錄相關配置:
默認首頁
DirectoryIndex 主要用於當訪問的請求僅指定了域名沒有指定具體文件時,返回的首頁文件
示例:
DirectoryIndex 首頁1 首頁2
是否允許列出目錄結構
Options Indexes
作用:當所請求的首頁文件不存在時,是否允許列出目錄結構,非常不安全,網站上線後一定關閉(不書寫此項)
AllowOverride
主要用於設置是否開啟外部配置文件(.htaccess)
對目錄權限設置
order
形式1:
order deny,allow
作用:如果沒有明確的拒絕則全部允許
形式2:
order allow,deny
作用:如果沒有明確的允許則全部拒絕
具休拒絕項與允許項使用deny與allow進行配置
示例1:
order deny,allow
deny from 192.168.10.11
allow from all
除了192.168.10.11拒絕外,其余全部允許(與deny與allow具體項的順序無關)
示例2:
order allow,deny
allow from 192.168.10.11
deny from all
只允許192.168.10.11訪問,其余全部拒絕(與deny與allow具體項的順序無關)
擴展配置文件httpd-vhosts.conf,位於conf目錄下的extra目錄
NameVirtualHost 開啟基於域名的虛擬主機
NameVirtualHost *:80
虛擬主機使用:
<Virtualhost *:80>
#主機配置項
</Virtualhost>
需求:
有個公司有一台服務器,有三個網卡
網卡1:192.168.10.11 www.fist.com d:/php_folder/20151027/20151201/first
網卡2:192.168.10.22 www.second.com
d:/php_folder/20151027/20151201/second
網卡3:192.168.10.33 www.third.com
d:/php_folder/20151027/20151201/second
配置步驟:
1、使用host文件模擬DNS服務器
2、在主配置文件中開啟對擴展配置文件的加載
在擴展 配置文件中創建虛擬主機
需求:A公司有一台服務器,只有網卡接口
配置二個主機
192.168.20.11 www.one.com d:/php_folder/20151027/20151201/one
192.168.20.11 www.two.com d:/php_folder/20151027/20151201/two
示例:
需求:
A公司有一個服務器
一個固定IP:192.168.30.11
對於所有的普通用訪問時使用www.234.com域名通過80端口進行操作
要求所有的管理員對後台系統的管理使用5000端口
示例:
監聽端口
host文件
虛擬主機配置
用於開啟外部配置文件.htaccess
.htaccess主要作用是重定向、防盜鏈、自定義錯誤信息提示頁面
.htaccess文件的修改不需要重新啟動apache
.htaccess文件需要使用編輯器另存的方法創建
.htaccess文件只對當前目錄生效
示例1:
第1步:開啟外部配置文件.htaccess文件
第2步:在.htaccess文件中設置自定義錯誤信息頁面
示例2:
第1步:
第2步:
在根目錄下創建一個image資源目錄,在此目錄內創建一個.htaccess文件,內容如下:
禁止訪問此目錄內所有的文件
第3步:
當訪問站點根目錄內的A目錄內的文件時,自動轉身B目錄(或另一個主機下的目錄)
Apache默認只支持HTML文件,通過模塊(插件)可以支持PHP,還可以與Tomcat連通來支持JSP。
Apache所有的功能的擴展都是模塊的形式實現,模塊可以理解為插件。
圖解:
示例:
第一步:開啟以下功能模塊
第二步:
使用htpasswd.exe文件創建密碼文件,運行環境為cmd
htpasswd語法:
htpasswd -c 密碼文件 用戶名
作用是用於重新創建密碼文件,
示例:
第三步:
設置認證方式
語法:
AuthType Basic
第四步:
設置realm,作用就是為認證的文件夾起一個顯示名,當用戶訪問時顯示給用戶看。
語法:
AuthName '提示信息'
示例:
第五步:
設置認證用戶密碼文件
語法:
AuthUserFile '密碼文件所在的目錄'
示例:
第六步:設置驗證用戶名
對多個用戶進行認證
require user 用戶1 用戶2 用戶3
對所有的用戶進行認證
require valid-user
添加認證用戶
語法:
htpasswd '用戶密碼文件' 用戶名
示例:
刪除用戶
語法:
htpasswd -D '用戶密碼文件' 用戶名
完整代碼示例: