歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux綜合 >> Linux資訊 >> 更多Linux

Apache用戶指導手冊

  隨著 Linux的不斷普及,很多的朋友把REDHAT安裝到了自己的計算機上,從此也就開始了對REDHAT的摸索。我在這裡也把我的一點心得體會告訴大家,希望對大家有所幫助。     Apache 的安裝   通常來說,大家在安裝時可以選擇安裝WEB SERVER ,並在INTERNET SERVICES中開啟httpd這一相服務,這樣系統就會自動的安裝好apache,並且在系統第一次啟動時啟動httpd進程。在作好一些相應的配置後,在你的Xwindows環境下打開NETSCAPE,並在URL中填入localhost 或本機的IP地址,就會訪問到apache的默認的頁面。     如果說你沒有安裝WEB SERVER ,你可以重新安裝並選擇UPDATE,挑選apache的軟件包安裝到本機。當然,如果你想要安裝最新的版本,可以http://www.apache.org/ 網站上去下載最新的版本。如果是原文件,需要做一些相應的配置,然後編譯原文件。如果是下載的二進制文件,就可以直接配置你的WEB 服務器。至於編譯原文件後和配置工作,我們暫時不提,先講一講在安裝系統時就安裝了apache 的情況下的配置過程。   系統啟動時會去啟動httpd的服務,通常沒有改過配置,httpd是起不來的。報的錯誤是ServerName not idnetify. 這是由於默認的配置沒有指定服務的名稱,這時你可以手動修改配置文件就可以了。具體的方法是:   1. 編輯 /etc/httpd/conf/ 目錄下的httpd.conf文件,找到ServerName 這一項參數,這一行是被注釋掉的(前面有#的符號)。去掉前面的在\"#\"符號,並在後面填入你的hostname或IP地址。   2. 從新啟動httpd進程。   # /etc/rc.d/init.d/httpd stop   # /etc/rc.d/init.d/httpd start   然後在Xwindows的界面下啟動netscape,在URL中輸入localhost或本機的IP地址,就可以看到apache 的一個頁面了,從這個頁面上你可以看一看關於apache的文檔,學習一下他的有關內容。     這樣一個主頁的進程就配置好了,你將自己的主頁拷貝到/home/httpd 目錄中,再用netsacpe訪問自己的機子,就會發現現在顯示的是你自己的主頁。你的主頁就這樣配置好了,別的機子只要在浏覽器中填入你的IP地址就可以訪問到你的主頁了。如果你想要有域名的話,就得另外申請了。   注意有時會有下面的情況:當你用NETSACPE訪問了你的頁面,這時,你重新更換默認目錄中的內容,可是不管你如何在NETSCAPE中RELOAD都無法調入你新的內容。   產生這種情況的原因是NETSCAPE直接調用CACHE中的內容,沒有真正的讀取你文檔的內容。解決的方法是在NETSCAPE中清空CACHE。具體的步驟如下:   1. 選擇菜單中的Edit   2. 在最下面選擇 Preference   3. 在左邊的菜單中選擇Advanced   4. 在他的下拉菜單中選擇Cache   5. 點擊 Clear Disk Cache 和 Clear Memory Cache 按鈕。   這樣清空了NETSCAPE 的CACHE後,就可以看到你更新後的頁面了。     http 的命令行參數   httpd 是一個可執行的文件,他的位置是在/usr/bin目錄裡。用這個命令我們可以手動的啟動一個WWW的服務,這樣使得別人可以訪問你的主頁。他的具體參數是:   -d serverroot   這個參數告訴httpd在何處去取啟動時所需的配置參數,serverroot是存放配置文件的命令名。   -f config   配置文件的名稱,默認的值是httpd.conf。如果沒有給定目錄,就會到serverroot的目錄中取找這個文件。   -X   啟動單進程模式。意思是不會產生任何子進程,也就是你只能看到index.Html這一頁,點擊上面的鏈接都不會有反應。   -v   顯示httpd的版本號。   -l   顯示編譯進httpd的模塊名稱。   -?   顯示httpd 的參數   了解了上面的參數後,我們就可以手動的啟動一個服務:   #httpd 杁 /etc/httpd/mywebconf   在 /etc/httpd.mywebconf目錄中存放了你的WEB SERVER 的配置文件,下面就具體的介紹一下該目錄中的配置文件的名稱和內容。     配置文件的內容和參數意思   在配置目錄中有三個文件,分別是:   1. conf/httpd.conf :   ServerType :有兩個值可供選擇standalone 和inetd   Standalone :   表示你的httpd進程,是以一個單獨的守護進程(daemon)的方式在後台偵聽是否有客戶端的請求。   Inetd :   表示你的httpd進程不是以守護進程(daemon)的方式運行,而是由Inetd 這個 internet services的進程偵聽,一旦有客戶的請求,他會自動的啟動httpd這個進程來提供相應的服務。   默認的是Standalone方式,如果你不是對 ARPA Berkeley Services 不是很了解的話,不要更改。   Port : 你分配給你的WEB SERVER 的端口號。   Httpd 的默認端口是80,也可以分配給自己的WEB SERVER 一個大於1024 的端口號。如果你這樣作,你必須在你的URL後面跟上你的端口號才能訪問到你的頁面。比如你分配給你的服務的端口號是8888,那麼你訪問時需要輸入http://domainname:8888   ServerAdmin :服務管理員的email 地址,默認的是本機的root用戶,所以是root@localhost   ServerRoot :用來存放服務的配置、出錯和記錄文件的目錄。   BindAddress :虛擬主機的IP地址。用一台機子虛擬多台機子。   ErrorLog :用來存放你WEB SERVER的出錯信息的文件。   TransferLog :用來存放記傳輸過的文件名的記錄文件。   PidFile :該指定的文件存放了httpd進程的進程號,用來停止WEB SERVER。   ScoreBoardFile :用來存放進程的信息。   ServerName :你機子的名稱,如果你有域名,填入你本機的域名。如果沒有,就填入你的主機名或IP地址。   Timeout :傳輸或接收的延時。大於這個時間SERVER 會斷開這個鏈接。   KeepAlive :(on or off)是否允許一個鏈接同時發出多的請求。   KeepAliveTimeout :(default is 15)等待下一個請求的時間。   MaxClients :(default is 150)允許的最大客戶個數。   通常上面的參數的默認值是不用改的,但是如果你同時在一台機子上開幾個WEB SERVER 時要注意。第一,你要給每一個WEB SERVER 分配不同的port 號。第二,要分別指定他們的errorlog文件和pidfile文件。第三,不懂的參數不要隨意改動,即使改動也要一次改一個,並留有記錄以便恢復。   2. /conf/Access.conf :   主要是對目錄的功能和訪問的控制的設定。下面我針對默認的頁面的配置文件進行說明。該文件的位置是:/etc/httpd/conf/access.conf.   該文件的第一段非注釋部分如下:   <Directory /home>   Options Indexes IncludesNOEXEC   AllowOverride None   </Directory>   大家注意到這一部分是以<Directory /home>開頭,以</Directory>結束的。其中開頭的部分<Directory /home>表示下面的設定是針對 /home 目錄的。Options 這一命令有很多的參數,各參數的功能如下:   All 所有的選項除了MultiViews功能。   ExecCGI 開啟執行CGI程序的功能。   FollowSymLinks 開啟一個動態的鏈接,當有客戶訪問到該目錄時會自動的鏈接到另一個相關的目錄中去。   Includes 開啟服務端的引用功能。   IncludesNOEXEC 開啟服務端的引用功能,但是#exec和CGI程序的引用將被禁止。   Indexes 如果沒有index.html文件在目錄中,就會顯示文件列表。   SymLinksIfOwnerMatch 只有在鏈接的目標文件或目錄與當前的目錄屬於同一用戶時,才開啟鏈接。   接著是AllowOverride參數,該參數是設定訪問控制的。這裡把他設置成None,表示沒有開啟該功能。   第二部分是:   <Directory /home/httpd/html>   Options Indexes Includes ExecCGI FollowSymLink   AllowOverride None   order allow,deny   allow from all   </Directory>   第三部分是:   <Directory /home/httpd/cgi-bin>   AllowOverride None   Options ExecCGI   </Directory>   表示對/home/httpd/cgi-bin 不進行訪問控制,允許執行CGI程序。這就表明這是一個用來存放CGI程序的目錄     3. /conf/srm.conf   主要是用來指定你的文檔的位置。   第一個參數是:DocumentRoot 。用來指定主文檔的地址。   第二個參數是:UserDir 。用來指定個人主頁的位置。如果你有一個用戶的home目錄為 /home/jon 當在URL中輸入http://yourdomain/~jon 系統就會到 /home/jon/X/中去取這個用戶的個人主頁。其中X為UserDir 所指定的目錄。   第三個參數是:DirectoryIndex。用來聲明查找的索引文件的名稱。   其他的不改也無防。通常用到的就是上面的幾個選項。     具體示例   需要建立一個開機啟動的web server。假定你的文檔目錄為/home/jon/html。   首先,更改/etc/httpd/conf/access.conf文件的內容。將原文檔的目錄更改為新的文檔目錄。   例如如下的更改:     <Directory /home/httpd/html> ? <Directory /home/jon/html>   Options Indexes Includes ExecCGI FollowSymLink   AllowOverride None   order allow,deny   allow from all   </Directory>   <Directory /home/httpd/cgi-bin> ? <Directory /home/jon/cgi-bin>   AllowOverride None   Options ExecCGI   </Directory>   如上做相應的更改,注意 /home/jon/cgi-bin為你的cgi程序的目錄。   接著,修改 /etc/httpd/conf/srm.conf文件。   將DocumentRoot /home/httpd/html 改為Docum




Copyright © Linux教程網 All Rights Reserved