在httpd.conf檔中,有以下配置(註:捨去httpd.conf檔的註解內容)
Listen 80 ServerName localhost <Directory /> AllowOverride none Require all denied </Directory> DocumentRoot "E:" <Directory "E:/Workshop/Apache"> Options Indexes FollowSymLinks AllowOverride None Require all granted </Directory>
(測試前最好先清理瀏覽器快取),那麼在瀏覽器中輸入http:// localhost/Workshop/Apache/ 便可以訪問E:/Workshop/Apache下的所有文件,注意這裡的根目錄是E:,但是上面的那個Directory設置了權限所以無法訪問E盤下面的所有內容,如果將上面的那個Directoy更改為:
<Directory /> Options Indexes FollowSymLinks AllowOverride None Require all granted </Directory>
那麼便可以從瀏覽器中訪問E盤的所有東西,當在瀏覽器中輸入localhost的時候,瀏覽器將會顯示E盤根目錄下的所有內容,並且可以訪問。為了安全,我們通常不會這麼做,因此經常的設定方法是下面這樣的設定:
Listen 80 ServerName localhost <Directory /> AllowOverride none Require all denied </Directory> DocumentRoot "E:/Workshop/Apache" <Directory "E:/Workshop/Apache"> Options Indexes FollowSymLinks AllowOverride None Require all granted </Directory>
透過瀏覽器只允許存取特定目錄,這裡也就是E:/Workshop/Apache目錄下的所有內容。當然對於第二個Dir,可以設定E:/Workshop/Apache下不同資料夾的存取權限。
最後說一下虛擬主機的設定,請按照以下格式設定(放在httpd.conf檔案末尾即可):
如下所示,需要先設定監聽端口,然後是NameVirtualHost指定主機位址以及端口,接下來就是對VirtualHost進行設定了,其中包括SeverName也就是主機名稱以及文檔根目錄,注意對於本地開發時,將ServerName設定為localhost或者127.0.0.1即可,其中的文檔根目錄與目錄設定一樣即可,或者你也可以在文件根目錄中為不同的資料夾設定不同的存取權限。其中的×號代表監聽所有存取設定連接埠的虛擬主機。
Listen 81 NameVirtualHost *:81 <VirtualHost *:81> ServerName 127.0.0.1 DocumentRoot "C:/Users/Administrator/php/webroot1" <Directory "C:/Users/Administrator/php/webroot1"> Options Indexes FollowSymLinks AllowOverride None Require all granted </Directory> </VirtualHost> Listen 82 NameVirtualHost ×:82 <VirtualHost *:82> ServerName 127.0.0.1 DocumentRoot "C:/Users/Administrator/php/webroot2" <Directory "C:/Users/Administrator/php/webroot2"> Options Indexes FollowSymLinks AllowOverride None Require all granted </Directory> </VirtualHost>
以上就介紹了apache配置多站點,包括了方面的內容,希望對PHP教程有興趣的朋友有所幫助。