1。設置默認打開文件位置
<IfModule dir_module>
這個選項可以選擇默認打開的文件位置
for example:
假設默認servername 是www.baidu.com
則當在瀏覽器中輸入www.baidu.com時,默認返回
<IfModule dir_module>中的文件。
有关directoryIndex的说明:
Directory的作用:当用户访问的文件没有指定明确使用的网站(php。html)时,再由该指示器来返回给用户的默认网页。
对于站点来说,就是主页。他可以出现在主配置文件http.conf中,对全局变量都生效。也可以出现在virtualbox中仅仅对虚拟主机有效,还可以出现在一个文件夹的设定中,只对文件夹有效。
2。主機被名設置
此時相當與兩個主機名但訪問的是一個內容。
例如http://www.baidu.com
http://baidu.com
使用主機別名來實現
ServerAlias 別名1 別名2 別名3
3.文件夾訪問控制的文件控制方式
當配置directory的配置選項時,我們可以使用一個獨立的文件來控制某文件夾的訪問權限。
但是該文件的文件名必須是: .htaccess
attention:
1.只有後綴和逗號
2。該文件必須放在被控制訪問權限的文件夾中(不同的文件放在不同的位置)
3。被控制訪問權限的文件夾的上層文件夾中(通常是形如Directory)的directory中必須設置 AllowOveride All
4。.htaccess 文件中出現的代碼可以是具體代碼。例如
DirectoryIndex 1.php
若.htaccess 文件有效,將會覆蓋上級設置。
代碼示範
<Directory "/var/www/html">
AllowOverride All
DirectoryIndex 2.php
</Directory>
.htaccess 文件放在目錄/var/www/html下,並且包含內容 DirectoryIndex 1.php
則 打開/var/www/html時默認會選擇1.php
4.目錄別名設置
例如 存在http://www.php34.com
http://www.php34.com/day1
http://www.php34.com/day1/abc
加入上述都存在,則可以通過某種方式訪問同一個文件。
然而當在一個站點中,如果不存在某個文件夾,則可以通過配置想來做:
例如http://www.php34.com/day2不存在,訪問顯示 notfound
然後開始設置:
查找 <IfModule alias_module>
添加 Alias /soft "/var/www/html/index.html"
然後開始訪問
如果出現訪問 forbidden, 則需要建立一個directory,路徑設爲"/var/www/html/index.html",參數設置爲Allow from all
5.多站點設置
首先 查找到 Virtual hosts選項,
發現Include etc/extra/httpd-vhosts.conf文件
然後配置httpd-vhosts.conf文件(注意這個文件的位置是從etc算起,即當前文件夾的etc開始算起,不是全局路徑):
格式如下:
NameVirtualHost *:80
<VirtualHost *:80>
ServerName www.localhost.com
#設置主機別名
ServerAlias localhost.com
DocumentRoot "/var/www/html"
#這一行的目錄需要和上一行的DocumentRoot一致
<Directory "var/www/html">
options Indexes
AllowOverride All(允許該文件夾中的.htaccess文件生效)
Order allow, deny
allow from all
</Directory>
</VirtualHost>
attention:當配置了Virtualhost文件後,原來的httpd-conf文件中關於該項的配置會失效(這裏是httpd-conf中的/var/www/html會失效,需要注意。