10.2 配置服務文件參數(shù)

2023-05-12 10:22 更新

需要提醒大家的是,前文介紹的httpd服務程序的安裝和運行,僅僅是httpd服務程序的一些皮毛,我們依然有很長的道路要走。在Linux系統(tǒng)中配置服務,其實就是修改服務的配置文件,因此,還需要知道這些配置文件的所在位置以及用途,httpd服務程序的主要配置文件及存放位置如表10-1所示。

表10-1 Linux系統(tǒng)中的配置文件

作用 文件名稱
服務目錄 /etc/httpd
主配置文件 /etc/httpd/conf/httpd.conf
網(wǎng)站數(shù)據(jù)目錄 /var/www/html
訪問日志 /var/log/httpd/access_log
錯誤日志 /var/log/httpd/error_log

大家在首次打開httpd服務程序的主配置文件,可能會嚇一跳—竟然有353行!這得至少需要一周的時間才能看完吧?!但是,大家只要仔細觀看就會發(fā)現(xiàn)劉遄老師在這里調(diào)皮了。因為在這個配置文件中,所有以井號(#)開始的行都是注釋行,其目的是對httpd服務程序的功能或某一行參數(shù)進行介紹,我們不需要逐行研究這些內(nèi)容。

在httpd服務程序的主配置文件中,存在三種類型的信息:注釋行信息、全局配置、區(qū)域配置,如圖10-4所示。

圖10-4 httpd服務程序的主配置文件的構成

各位讀者在學習第4章時已經(jīng)接觸過注釋信息,因此這里主要講解全局配置參數(shù)與區(qū)域配置參數(shù)的區(qū)別。顧名思義,全局配置參數(shù)就是一種全局性的配置參數(shù),可作用于對所有的子站點,既保證了子站點的正常訪問,也有效減少了頻繁寫入重復參數(shù)的工作量。區(qū)域配置參數(shù)則是單獨針對于每個獨立的子站點進行設置的。就像在大學食堂里面打飯,食堂負責打飯的阿姨先給每位同學來一碗標準大小的白飯(全局配置),然后再根據(jù)每位同學的具體要求盛放他們想吃的菜(區(qū)域配置)。在httpd服務程序主配置文件中,最為常用的參數(shù)如表10-2所示。

表10-2 配置httpd服務程序時最常用的參數(shù)以及用途描述

參數(shù) 作用
ServerRoot 服務目錄
ServerAdmin 管理員郵箱
User 運行服務的用戶
Group 運行服務的用戶組
ServerName 網(wǎng)站服務器的域名
DocumentRoot 網(wǎng)站數(shù)據(jù)目錄
Listen 監(jiān)聽的IP地址與端口號
DirectoryIndex 默認的索引頁頁面
ErrorLog 錯誤日志文件
CustomLog 訪問日志文件
Timeout 網(wǎng)頁超時時間,默認為300秒

從表10-2中可知,DocumentRoot參數(shù)用于定義網(wǎng)站數(shù)據(jù)的保存路徑,其參數(shù)的默認值是把網(wǎng)站數(shù)據(jù)存放到/var/www/html目錄中;而當前網(wǎng)站普遍的首頁面名稱是index.html,因此可以向/var/www/html目錄中寫入一個文件,替換掉httpd服務程序的默認首頁面,該操作會立即生效。

在執(zhí)行上述操作之后,再在Firefox瀏覽器中刷新httpd服務程序,可以看到該程序的首頁面內(nèi)容已經(jīng)發(fā)生了改變,如圖10-5所示。

    [root@linuxprobe ~]# echo "Welcome To LinuxProbe.Com" > /var/www/html/index.html
    [root@linuxprobe ~]# firefox

圖10-5 httpd服務程序的首頁面內(nèi)容已經(jīng)被修改

大家在完成這個實驗之后,是不是信心爆棚了呢?!在默認情況下,網(wǎng)站數(shù)據(jù)是保存在/var/www/html目錄中,而如果想把保存網(wǎng)站數(shù)據(jù)的目錄修改為/home/wwwroot目錄,該怎么操作呢?且看下文。

第1步:建立網(wǎng)站數(shù)據(jù)的保存目錄,并創(chuàng)建首頁文件。

    [root@linuxprobe ~]# mkdir /home/wwwroot
    [root@linuxprobe ~]# echo "The New Web Directory" > /home/wwwroot/index.html

第2步:打開httpd服務程序的主配置文件,將約第119行用于定義網(wǎng)站數(shù)據(jù)保存路徑的參數(shù)DocumentRoot修改為/home/wwwroot,同時還需要將約第124行用于定義目錄權限的參數(shù)Directory后面的路徑也修改為/home/wwwroot。配置文件修改完畢后即可保存并退出。

    [root@linuxprobe ~]# vim /etc/httpd/conf/httpd.conf 
    ………………省略部分輸出信息………………
    113 
    114 #
    115 # DocumentRoot: The directory out of which you will serve your
    116 # documents. By default, all requests are taken from this directory, bu t
    117 # symbolic links and aliases may be used to point to other locations.
    118 #
    119 DocumentRoot "/home/wwwroot"
    120 
    121 #
    122 # Relax access to content within /var/www.
    123 #
    124 <Directory "/home/wwwroot">
    125 AllowOverride None
    126 # Allow open access:
    127 Require all granted
    128 </Directory>
    ………………省略部分輸出信息………………
    [root@linuxprobe ~]#

第3步:重新啟動httpd服務程序并驗證效果,瀏覽器刷新頁面后的內(nèi)容如圖10-6所示。奇怪!為什么看到了httpd服務程序的默認首頁面?按理來說,只有在網(wǎng)站的首頁面文件不存在或者用戶權限不足時,才顯示httpd服務程序的默認首頁面。我們在嘗試訪問http://127.0.0.1/index.html頁面時,竟然發(fā)現(xiàn)頁面中顯示“Forbidden,You don't have permission to access /index.html on this server.”。而這一切正是SELinux在搗鬼。

    [root@linuxprobe ~]# systemctl restart httpd
    [root@linuxprobe ~]# firefox

圖10-6 httpd服務程序的默認首頁面

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號