首頁常見問題正文

Apache虛擬主機具體配置教程【全程干貨】

更新時間:2023-09-05 來源:黑馬程序員 瀏覽量:

在本地環(huán)境進行項目開發(fā)時,經(jīng)常需要部署多個網(wǎng)站,每個網(wǎng)站可以用對應的域名來訪問,可以通過Apache的虛擬主機功能來實現(xiàn)這樣的效果。Apache虛擬主機的具體配置步驟如下。

(1)配置域名。由于申請真實域名比較麻煩,為了便于學習和測試,可以更改操作系統(tǒng)的hosts文件,實現(xiàn)將任意域名解析到指定IP地址。在操作系統(tǒng)中,hosts文件用于配置域名與IP地址之間的解析關系,當請求域名在hosts文件中存在解析記錄時,可直接使用該記錄,只有當不存在解析記錄時,才通過DNS域名解析服務器進行解析。

以管理員身份運行命令行工具,輸入如下命令打開hosts文件。

C: WINDOWS \system32> notepad drivers\etc\hosts

上述命令表示用記事本(notepad)打開hosts文件。將文件打開后,在文件的最底部添加如下一行內(nèi)容。

127.0.0.1 laravel.test

經(jīng)過上述配置后,就可以在瀏覽器上通過htp:/laraveltest來訪問本機的Web服務器,這種方式只對本機有效。由于當前還沒有配置虛擬主機,此時用htp:/laravel.test 訪問的是Apache的默認主機。

(2)啟用虛擬主機輔配置文件。在Apache的confextra目錄中有一些輔配置文件,這些文件是hitpd.conf的擴展文件,用于將一部分配置抽取出來,以便于修改。打開hitpdleonf文件,找到如下所示的一行配置.刪除前面的“#”即可啟用虛擬主機輔配置文件。

#Include conf/extra/httpd-vhosta.conf

(3)配置虛擬主機。打開confextralhtpd-vhosts.conf 輔配置文件,可以看到Apache提供的默認配置,具體如下:

<VirtualHost *:80>
   ServerAdnin vebmasterêdunmy-host.exanpleacom
   DocunentRoot "c:/Apache24/docs/dungay-host.example.com"
   ServerName dummy-host.example,com
   ServerAlias snnw.dummy-host.exanple.com
   ErrorLog "1ogs/dummy-host.ekanple.com-error_log"
   customxlog "logs/dunay-hostresacple.con-access_log" comon
</VirtualHost>

上述配置中,第l行的“*80”表示該主機通過80端口訪問;ServerAdmin是管理員郵箱地址;DocumentRoot是該虛擬主機的文檔目錄;ServerName是虛擬主機的域名;ServerAlias用于配置多個域名別名(用空格分隔);Erorlog是錯誤日志;Customlog是訪問日志,其后的common表示日志格式為通用格式。

上述默議配置本書中用不到,直接刪除即可,也可以全部加上“#”注釋起來,以便于參考。然后編寫讀者自己的虛擬主機配置,具體如下:

<VirtualHost ·:80>
   DocumentRoot "c:/web/apache2.4/htdocs"
   ServerNane localhost
</VirtualHost>
<VirtualHost*:80>
   DocumentRoot "c:/web/www/laravel/public"
   ServerNane laravel.test
</VirtualHoat>
<Directory "c:/web/www">
   Options -indexes
   AllowOverride All
   Require local
</Directory>

上述配置實現(xiàn)了兩個虛擬主機,分別是localhost和laravel.test,并且這兩個虛擬主機的站點目錄指定在不同的路徑下。第9~13行用于配置c/web/www路徑的訪問權(quán)限。其中,第10行用于關閉件列表功能;第1l行用于開啟分布式配置文件,開啟后會自動讀取目錄下的.htaccess文件中的配置;第12行用于配置目錄訪問權(quán)限,設為Require local表示只允許本地訪問,若允許所有訪問,可設為Require all granted,若拒絕所有訪問,可設為Require all denied。

(4)編寫測試文件。創(chuàng)建C:webwwwlaravelpublic目錄,并在目錄中編寫一個內(nèi)容為Laravel的index.html 網(wǎng)頁。然后重啟Apache服務使配置生效,使用瀏覽器進行訪問測試,localhost和laravel.test 這兩個虛擬主機的頁面效果如圖1-8所示。

1693900547452_配置安裝.png

分享到:
在線咨詢 我要報名
和我們在線交談!