| 系統(tǒng) | solaris 10 |
| apache版本 | httpd-2.2.0 |
| 網(wǎng)絡(luò)接口地址 | 192.168.27.201 |
| apache的安裝路徑 | /usr/local/apache2/ |
| 虛擬機(jī)的方式端口 | 8088 |
修改主配置文件/usr/local/apache2/conf/httpd.conf。用編輯器(vi等)打開主配置文件httpd.conf,把include conf/extra/httpd-vhosts.conf這行(大概在395行的位置)前面的注釋取消,使其包含功能生效。再在主配置文件加入虛擬機(jī)的監(jiān)聽“l(fā)isten 192.168.27.201:8088”(第一個字母‘l’是大寫的)。修改加入的內(nèi)容如下所示:
|
修改虛擬機(jī)配置文件。它的目錄在主配置文件httpd.conf中以包含的方式(include)指出了路徑是 /usr/local/apache2/conf/extra/httpd-vhosts.conf,如果打算用其他的文件,可以在主配置文件中重新指定。這個虛擬機(jī)配置文件是一個模版,給出了2個apache虛擬機(jī)的事例,把它們?nèi)孔⑨尩簦∽ⅲ喝绻腔谟蛎奶摂M機(jī)機(jī)制,namevirtualhost *.80這行是必須的,因?yàn)槲疫@里是基于端口(確切的說是基于ip地址)的虛擬機(jī)制,所以要把它注釋掉。先照著模版加入下面的塊到httpd-vhosts.conf:
|
然后回到apache的安裝目錄執(zhí)行命令 bin/apachectl –t檢查主配置文件語法是否正確,無誤后再執(zhí)行bin/apachectl –s 檢查虛擬機(jī)的語法是否正確。接下來在虛擬機(jī)的根文檔目錄創(chuàng)建一個測試文檔test.html,啟動apache服務(wù) bin/apachectl start&,用瀏覽器訪問http://192.168.27.201,顯示apache的默認(rèn)頁面,表明主配置文件是正常的;再訪問http://192.168.27.201:8088/test.html.返還代碼 403(禁止訪問),頁面內(nèi)容為“你無法查看該網(wǎng)頁…”,同樣的問題已經(jīng)有2個人遭遇過了,他們都一致認(rèn)為,以前在apache1.3等老版本上就是這樣設(shè)置的,應(yīng)該不會這樣呀!并且語法檢查也通過了,是什么問題呢?打開主配置文件conf/httpd.conf,發(fā)現(xiàn)如下的塊:
|
這一個塊就是對目錄進(jìn)行訪問控制的,而且設(shè)置得非常嚴(yán)格,因此,我們必須手動加入虛擬機(jī)目錄的權(quán)限控制塊,才可以讓用戶正常訪問虛擬機(jī)的目錄及頁面文件。有兩個地方可以加入虛擬目錄訪問權(quán)限控制塊:主配置文件httpd.conf和虛擬機(jī)配置文件httpd-vhost.conf,加在那一個地方更合適呢?當(dāng)然選虛擬機(jī)配置文件,最重要的理由是維護(hù)起來更方便,可能也涉及安全方面的問題(這個我沒有做個測試)。接下來就把目錄訪問控制塊插入到虛擬機(jī)配置文件,其形式如下:
|
完成文件,檢查語法,重啟apache服務(wù),再用瀏覽器訪問虛擬機(jī)地址,這下應(yīng)該正常了。
新聞熱點(diǎn)
疑難解答