Apache虛擬主機配置

2021-07-11 03:33:36 字數 3298 閱讀 4335

1.  和

虛擬主機的關鍵指令:

語法:  ...  

eg:   表示監聽本機所有ip位址的80埠。

表示監聽192.168.1.10的8080埠。

2. serveradmin指令

用於指定站長的e-mail位址。當使用者訪問出現錯誤,apache將會顯示這這個e-mail位址。

3.documentroot指令

用來指定**的根目錄。一般設定為絕對路徑;否則,apache將認為它的父目錄是serverroot指令所定義的路徑。 

eg: 

documentroot /var/www/xiebo.test.com

allow from all   允許所有主機訪問

allow from .net  example.edu     乙個(部分)網域名稱

allow from  192.168.1.2   192.168.1.10  完整ip位址

allow from   10  172.20  192.168.1   部分ip位址(ip位址的開始1-3個位元組,用於子網限制)

allow from   10.1.0.0/255.255.255.0  網路/掩碼對  

allow from   10.1.0.0/24 網路/nnn  (cidr形式)

9. deny指令

用來限制主機訪問的,其語法和引數與allow指令完全相同;

10. errorlog指令

指定了錯誤日誌的位置。通常情況下,只需要寫明日誌檔案的路徑即可:  

errorlog $/error.log

其中, 

$變數是在envvars這個配置檔案中設定的,它指向/var/log/apache2 .

你也可以讓apache將錯誤資訊交給某個命令去處理,而不是寫入乙個檔案;要這樣做只需要開頭寫乙個管道符號「|」,後面跟命令的路徑即可,eg :  errorlog   「|  /usr/local/bin/httpd_errors"

11. loglevel指令

用來控制日誌的詳細程度的級別。按照由粗到細的順序,這些級別有:

emerg :緊急(系統無法使用);

alert : 必須立即採取措施

crit : 致命錯誤

error :錯誤情況

warn : 警告情況

notice : 一般重要情況

info : 普通資訊

debug : 除錯資訊

每個級別所輸出的資訊都會包含上一級別的資訊,比如說,如果設定為loglevel  info,那麼所有notice和warn級別的資訊都會被記錄

.12.customlog指令

定義了訪問日誌的路徑和格式,語法如下:

customlog  file | pipe   format | nickname [env=[!]environment-variable]  

指令的第1個引數,可以是日誌檔案的路徑,也可以是管道(用某個程式來處理日誌資訊,語法和errorlog相同,也是管道符」|「後面跟著乙個程式的路徑);

指令的第2

個引數,則是格式,這個格式既可以是由logformat指令所定義的nickname,也可以是按日誌格式的規則定義的格式字串。

以下兩組設定,分別使用nickname和格式字串,其結果是完全一樣的:

#使用nickname

logformat "%h %l %u %t \"%r\" %>s %b" common

customlog $/access_log common 

#使用格式字串

customlog $/access_log  

"%h %l %u %t \"%r\" %>s %b"

13. serversignature指令

用來定義伺服器所生成頁面的指令碼,這些頁面包括錯誤資訊,mod_proxy的ftp目錄列表,mod_info的輸出等。

如果設定為serversignature off,那麼伺服器生成的網頁底端不會有附加資訊,如果設定為serversignature on,那麼在某些情況下(比如目錄列表),伺服器生成的網頁的底部會有類似這樣的資訊: apache/2.4.7 (ubuntu) server at xiebo.test.com port 8899

如果設定為serversignature email,則會在上述資訊的基礎上,給網域名稱加上e-mail的鏈結,指向你在serveradmin指令中定義的e-mail位址。

14. alias指令

該指令有點像linux的ln命令,它提供路徑別名,讓你用起來更方便。通過該指令,即使某個目錄(或檔案)不在documentroot所設定的路徑下,也可以通過alias指令令其可以訪問。語法:

alias   url-path   file-path | directory-path  

eg: alias  /doc/ "/usr/share/doc/"    將/usr/share/doc/對映成**的/doc/ 。

serveradmin webmaster@localhost

servername xiebo.test.com

documentroot /var/www/xiebo.test.com

options followsymlinks

allowoverride none

options indexes followsymlinks multiviews

allowoverride none

order allow,deny

allow from all

scriptalias /cgi-bin/ /usr/lib/cgi-bin/

allowoverride none

options +execcgi -multiviews +symlinksifownermatch

order allow,deny

allow from all

errorlog $/error.log

# possible values include: debug, info, notice, warn, error, crit,

# alert, emerg.

loglevel warn

customlog $/access.log combined

alias /doc/ "/usr/share/doc/"

options indexes multiviews followsymlinks

allowoverride none

order deny,allow

deny from all

allow from 127.0.0.0/255.0.0.0 ::1/128

apache虛擬主機配置

之前已經在csdn上上傳過apache的文件在這裡補充說明一下,apache2.2.x與tomcat或iis或三者之間的虛擬主機配置。介紹一下如何整合其他 web伺服器,如 iis tomcat 等。網上有 n多整合方案講的都不是很清楚 特別是 windows 下的 這裡要特別提示一下,apache...

apache虛擬主機配置

多個網域名稱 伺服器 對應乙個 ip 位址,配置方法為 namevirtualhost 111.22.33.44 servername www.sample.com documentroot www sample servername www.sample2.com documentroot www...

apache配置虛擬主機

namevirtualhost 80 directoryindex default.php index.html index.php index.htm servername www.host1.com servername host1 com documentroot d wamp www1 er...