導航:首頁 > IDC知識 > linux配置http伺服器配置

linux配置http伺服器配置

發布時間:2021-03-15 08:32:41

1、linux的web伺服器怎麼配置

工具/原料
Linux操作系統
Web伺服器配置詳解
方法/步驟
1.Apache是Linux下的Web伺服器,Apache用的是靜態頁面,需要載入模塊來支持動態頁面,會動態實時的調整進程來處理,最合理的使用多核CPU資源,支持虛擬主機應用,多個Web站點共享一個IP地址。

安裝Web服務
先安裝Web服務,通過命令yum groupinstall命令進行安裝,建議用groupinstall而不用Install是因為groupinstall,會把該服務所有相關的服務包一起安裝,這樣不會有丟失。

2.通過service httpd restart來開啟服務,這里用restart而不用start的原因是restart更安全,因為不知道該服務是否已經開啟,如果已經start了再次用start可能會有意外的問題產生,故這里用restart.

3.通過命令chkconfig httpd on來開啟httpd服務在下次開機後,仍然是開啟有效的,這樣的好處在於通過設置自動開啟服務,避免人為失誤操作,也會保證計算機重啟或者斷電後服務還是開啟的。

4.驗證httpd服務是否正常開啟,是否能夠對外提供服務,進入/var/www/html/,這里是主站點,寫一個簡單的頁面,然後重定向到index.html,這是默認的首頁。通過http訪問該服務,發現已經成功服務該站點。

5.通過命令vim /etc/httpd/conf/httpd.conf可以對httpd配置文件進行修改,也可以用配置文件裡面的功能,有些功能用#號注釋掉了,如果想使用該功能的話,直接刪除#號,可以讓內置的配置文件該功能生效。

6.通過命令ll /etc/httpd可以查看到該目錄下有conf和conf.d目錄文件,再進一步查看/etc/httpd/conf.d下面可以看到的文件都是httpd的模塊文件,用來支持動態頁面的模塊文件。

7.Apache和Selinux之間的關系,進入/var/www/html/目錄下,通過ll –Z查看目錄下index.html Selinux屬性,通過命令ps –auxZ|grep http查看httpd的進程,這些http進程都有httpd_t的Selinux上下文屬性,Selinux就規定了http_t這類的進程上下文屬性可以訪問httpd_sys_content_t這類文件的上下文屬性,從而保證了網站的內容可以被訪問。

8.查看Apache日誌信息,日誌信息存儲在/var/log/httpd/目錄下,可以查看http訪問的日誌及https的訪問日誌,可以查看錯誤的http日誌及https的錯誤日誌等信息,

2、linux中怎樣配置當系統啟動時自動啟動HTTP服務

chkconfig --level 35 httpd on
或者ntsysv命令,然後在界面中找到httpd服務,選中確定即可

3、LINux www伺服器配置,高手請解答謝謝!!Httpd文件中配置!

Linux下WWW伺服器配置全攻略_動網_社區論壇·開發者網路源動力
伺服器→ 閱讀文版章 Linux下WWW伺服器配置全權攻略 作者:無從考證 來源:轉載 閱讀 數 227 人次 , 2006-2-15 18:18:00 Linux操作系統近幾年有了蓬勃的發展,在整個世界范圍內得到了越來越多公司和團體的支持,尤其是最近IBM公司的鼎力...
www.cndw.com/tech/server/200602159929.asp

4、linux httpd服務配置

版本和版本不一樣,把你的httpd.conf發給我,我給你改

跟fedora無關,只跟apache有關,如果是一個虛擬主機,根本不用配置 index.html設置有一行,把這個加到其他index的最前面就行.

覺得你可能改完配置沒有重啟apache,確認一下
有外網ip嗎? 如果有可以給我發mail:

You will close the question after solved that:-)

5、如何在linux系統搭建http服務

1、安裝ftp服務端,方便你從客戶端上傳文件。linux上一般安裝vsftp.VSFTP的軟體安裝包是: vsftpd-2.2.2-12.el6_5.1.i686.rpm
查詢:#rpm -q vsftpd
安裝:#rpm -ivh vsftpd-2.2.2-12.el6_5.1.i686.rpm或者直接yum install vsftpd
啟動、停止及重啟VSFTP的命令: #service vsftpd start/stop/restart
配置文件:
/etc/vsftpd/vsftpd.conf //主配置文件
/etc/vsftpd.ftpusers //被禁止登錄FTP的用戶文件
/etc/vsftpd.user_list //允許登錄FTP的用戶文件
a、將登錄後的用戶限制在本地家目錄下:
#vi /etc/vsftpd/vsftpd.conf
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list
新建受限用戶的列表文件並加入受限用戶名
#vi /etc/vsftpd.chroot_list
raykeso
重啟ftp服務
#service vsftpd restart
2、安裝apache,開啟目錄索引,這樣你就可以瀏覽和下載文件。
apache配置文件
<Directory "I:/build/dist"> #設置瀏覽文件的目錄
Options Indexes #開啟目錄列表索引模式Order allow,deny
Allow from all
</Directory>

6、如何在linux搭建完整的web伺服器?

可以參考如下Web伺服器的建立過程。示例環境及web伺服器軟體:

Ubuntu 12.04
LAMP(Linux,Apache,Mysql,PHP)

1、安裝Apache

(1)在安裝HTTP Server之前需安裝APR(Apache Portable Runtime)和APR-util安裝APR
$ tar zxvf apr-1.4.6.tar.gz
$ cd apr-1.4.6/
$ ./configure
$ make
$ sudo make install

(2)安裝APR-util

$ tar zxvf apr-util-1.4.1.tar.gz
$ cd apr-util-1.4.1
$ ./configure –with-apr=/usr/local/apr (whereis apr)
$ make
$ sudo make install

(3)安裝httpd-2.4.2.tar.bz2默認安裝位置/usr/local/apache2網頁放在/usr/local/apache2/htdocs配置文件/usr/local/apache2/conf/httpd.conf

$ tar jxvf httpd-2.4.2.tar.bz2
$ cd httpd-2.4.2/
$ ./configure
$ make
$ sudo make install

(4)啟動HTTP Server$ sudo /usr/local/apache2/bin/apachectl startAH00558: httpd: Could not reliably determine the server』s fully qualified domain name, using 127.0.1.1. Set the 『ServerName』 directive globally to suppress this message

(5)查看http是否正常運行$ netstat -a | grep httptcp 0 0 *:http *:* LISTEN

(6)在瀏覽器輸入127.0.0.1如果正常應該顯示「It works!」

2、安裝MySQL

(1)、下載安裝mysql-5.5.25.tar.gz,默認安裝位置/usr/local/mysql/

$ tar zxvf mysql-5.5.25.tar.gz
$ cd mysql-5.5.25/
$ sudo groupadd mysql
$ sudo useradd -r -g mysql mysql
$ cmake .
$ make
$ sudo make install
$ cd /usr/local/mysql/
$ sudo chown -R mysql .
$ sudo chgrp -R mysql .
$ sudo scripts/mysql_install_db –user=mysql
$ sudo chown -R root .
$ sudo chown -R mysql data/
$ sudo cp support-files/my-medium.cnf /etc/my.cnf
$ sudo cp support-files/mysql.server /etc/init.d/mysql.server

(2)、啟動MySQL:
方法1:$ sudo service mysql.server start
方法2:$ sudo /usr/local/mysql/bin/mysqld_safe --user=mysql &

3、安裝PHP

(1)安裝下載php-5.4.4.tar.gz

$ tar zxvf php-5.4.4.tar.gz
$ cd php-5.4.4
$ ./configure --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql --with-mysqli --enable-mbstring --with-mcrypt(可能需要安裝libmcrypt-dev )
$ sudo make install
$ sudo cp php.ini-development /usr/local/lib/php.ini

(2)配置HTTP Server使之支持PHPapache配置文件/usr/local/apache2/conf/httpd.conf修改或添加如下配置

<;IfMole dir_mole>
DirectoryIndex index.php
<;/IfMole>
<;FilesMatch \.php$>
SetHandler application/x-httpd-php
<;/FilesMatch>

(3)重啟HTTP Server
$ sudo /usr/local/apache2/bin/apachectl restart

7、linux伺服器配置https

截止回答時,該網站https已經正確配置,可以正常訪問,一般出現上述問題由於默認文件名設置不正確,網站根目錄設置不正確,列目錄功能異常開啟等原因

8、Linux怎麼配置Web伺服器

工具/原料

Linux操作系統

Web伺服器配置詳解

方法/步驟

1.Apache是Linux下的Web伺服器,Apache用的是靜態頁面,需要載入模塊來支持動態頁面,會動態實時的調整進程來處理,最合理的使用多核CPU資源,支持虛擬主機應用,多個Web站點共享一個IP地址。

安裝Web服務

先安裝Web服務,通過命令yum groupinstall命令進行安裝,建議用groupinstall而不用Install是因為groupinstall,會把該服務所有相關的服務包一起安裝,這樣不會有丟失。



2.通過service httpd restart來開啟服務,這里用restart而不用start的原因是restart更安全,因為不知道該服務是否已經開啟,如果已經start了再次用start可能會有意外的問題產生,故這里用restart.


3.通過命令chkconfig httpd on來開啟httpd服務在下次開機後,仍然是開啟有效的,這樣的好處在於通過設置自動開啟服務,避免人為失誤操作,也會保證計算機重啟或者斷電後服務還是開啟的。

 4.驗證httpd服務是否正常開啟,是否能夠對外提供服務,進入/var/www/html/,這里是主站點,寫一個簡單的頁面,然後重定向到index.html,這是默認的首頁。通過http訪問該服務,發現已經成功服務該站點。


5.通過命令vim /etc/httpd/conf/httpd.conf可以對httpd配置文件進行修改,也可以用配置文件裡面的功能,有些功能用#號注釋掉了,如果想使用該功能的話,直接刪除#號,可以讓內置的配置文件該功能生效。

6.通過命令ll /etc/httpd可以查看到該目錄下有conf和conf.d目錄文件,再進一步查看/etc/httpd/conf.d下面可以看到的文件都是httpd的模塊文件,用來支持動態頁面的模塊文件。

7.Apache和Selinux之間的關系,進入/var/www/html/目錄下,通過ll –Z查看目錄下index.html Selinux屬性,通過命令ps –auxZ|grep http查看httpd的進程,這些http進程都有httpd_t的Selinux上下文屬性,Selinux就規定了http_t這類的進程上下文屬性可以訪問httpd_sys_content_t這類文件的上下文屬性,從而保證了網站的內容可以被訪問。


8.查看Apache日誌信息,日誌信息存儲在/var/log/httpd/目錄下,可以查看http訪問的日誌及https的訪問日誌,可以查看錯誤的http日誌及https的錯誤日誌等信息,

9、在Linux中,如何配置WWW伺服器?

Apache伺服器的設置文件位於/usr/local/apache/conf/目錄下,傳統上使用三個配置文件httpd.conf,access.conf和srm.conf,來配置Apache伺服器的行為。

httpd.conf提供了最基本的伺服器配置,是對守護程序httpd如何運行的技術描述;srm.conf是伺服器的資源映射文件,告訴伺服器各種文件的MIME類型,以及如何支持這些文件;access.conf用於配置伺服器的訪問許可權,控制不同用戶和計算機的訪問限制;這三個配置文件控制著伺服器的各個方面的特性,因此為了正常運行伺服器便需要設置好這三個文件。

除了這三個設置文件之外,Apache還使用mime.types文件用於標識不同文件對應的MIME類型, magic文件設置不同MIME類型文件的一些特殊標識,使得Apache 伺服器從文檔後綴不能判斷出文件的MIME 類型時,能通過文件內容中的這些特殊標記來判斷文檔的MIME類型。

bash-2.02$ ls -l /usr/local/apache/conf

total 100

-rw-r--r-- 1 root wheel 348 Apr 16 16:01 access.conf

-rw-r--r-- 1 root wheel 348 Feb 13 13:33 access.conf.default

-rw-r--r-- 1 root wheel 30331 May 26 08:55 httpd.conf

-rw-r--r-- 1 root wheel 29953 Feb 13 13:33 httpd.conf.default

-rw-r--r-- 1 root wheel 12441 Apr 19 15:42 magic

-rw-r--r-- 1 root wheel 12441 Feb 13 13:33 magic.default

-rw-r--r-- 1 root wheel 7334 Feb 13 13:33 mime.types

-rw-r--r-- 1 root wheel 383 May 13 17:01 srm.conf

-rw-r--r-- 1 root wheel 357 Feb 13 13:33 srm.conf.default

事實上當前版本的Apache將原來httpd.conf、srm.conf與access.conf中的所有配置參數均放在了一個配置文件httpd.conf中,只是為了與以前的版本兼容的原因(使用這三個設置文件的方式來源於NCSA-httpd),才使用三個配置文件。而提供的access.conf和srm.conf文件中沒有具體的設置。

由於在新版本的Apache中,所有的設置都被放在了httpd.conf中,因此只需要調整這個文件中的設置。以下使用預設提供的httpd.conf為例,解釋Apache伺服器的各個設置選項。然而不必因為它提供設置的參數太多而煩惱,基本上這些參數都很明確,也可以不加改動運行Apache伺服器。但如果需要調整Apache伺服器的性能,以及增加對某種特性的支持,就需要了解這些設置參數的含義。
關於Apache伺服器的性能,在Internet上存在很大的爭議,基本上使用Apache的使用者幾乎都不懷疑它的優秀性能,Apache也支撐了很多著名的高負載的網站,但是在商業機構的評測中,Apache往往得分不高。很多人指出,在這些評測中,商業Web伺服器及其操作系統往往由其專業公司的工程師進行過性能調整,而Free 的操作系統和Web伺服器往往就使用其預設配置或僅僅作很小的更改。需要指出的是,除了操作系統的性能調整之外,Apache 伺服器本身的預設配置絕不是最優化和最高效的,而是要適應幾乎所有種類操作系統、所有種類硬體下的設置,多平台的軟體不可能為特定平台和特定硬體提供最優化的預設配置。因此要使用Apache的時候,性能調整是必不可少的。

在商業評測中忽略了的另一個事實是,評測時往往對不同種類的功能進行比較,例如使用Apache的標准CGI 的性能與ISAPI,NSAPI等伺服器端API比較,事實上Apache伺服器與此可以比較的功能為modperl ,FastCGI,與ASP類似的功能為PHP等等,只不過由於Apache的開放模式,這些功能是由獨立的開發組,作為獨立的模塊來實現的。但是在評測中,測試人員沒有加入相應的模塊評測其性能。

HTTP守護進程的運行參數

httpd.conf中首先定義了一些httpd守護進程運行時需要的參數,來決定其運行方式和運行環境。

ServerType standalone

ServerType定義伺服器的啟動方式,預設值為獨立方式standalone,httpd

伺服器將由其本身啟動,並駐留在主機中監視連接請求。在Linux下將在啟動文件 /etc/rc.d/rc.local/init.d/apache中自動啟動Web伺服器,這種方式是推薦設置。

啟動Apache伺服器的另一種方式是inet方式,使用超級伺服器inetd監視連接請求並啟動伺服器。當需要使用inetd啟動方式時,便需要更改為這個設置,並屏蔽/etc/rc.d/rc.local/init.d/apache文件,以及更改/etc/inetd.conf並重起inetd,那麼Apache就能從inetd中啟動了。

兩種方式的區別是獨立方式是由伺服器自身管理自己的啟動進程,這樣在啟動時能立即啟動伺服器的多個副本,每個副本都駐留在內存中,一有連接請求不需要生成子進程就可以立即進行處理,對於客戶瀏覽器的請求反應更快,性能較高。而 inetd方式要由inetd發現有連接請求後才去啟動http伺服器,由於inetd 要監聽太多的埠,因此反應較慢、效率較低,但節約了沒有連接請求時Web伺服器佔用的資源。因此inetd方式只用於偶爾被訪問並且不要求訪問速度的伺服器上。事實上inetd方式不適合http的突發和多連接的特性,因為一個頁面可能包含多個圖象,而每個圖象都會引起一個連接請求,即使雖然訪問人數造成教少,但瞬間的連接請求並不少,這就受到inetd性能的限制,甚至會影響由inetd啟動的其他伺服器程序。
ServerRoot "/usr/local"

ServerRoot用於指定守護進程httpd的運行目錄,httpd在啟動之後將自動將進程的當前目錄改變為這個目錄,因此如果設置文件中指定的文件或目錄是相對路徑,那麼真實路徑就位於這個ServerRoot定義的路徑之下。

由於httpd會經常進行並發的文件操作,就需要使用加鎖的方式來保證文件操作不沖突,由於NFS文件系統在文件加鎖方面能力有限,因此這個目錄應該是本地磁碟文件系統,而不應該使用NFS文件系統。

#LockFile /var/run/httpd.lock

LockFile參數指定了httpd守護進程的加鎖文件,一般不需要設置這個參數, Apache伺服器將自動在ServerRoot下面的路徑中進行操作。但如果ServerRoot為NFS文件系統,便需要使用這個參數指定本地文件系統中的路徑。

PidFile /var/run/httpd.pid

PidFile指定的文件將記錄httpd守護進程的進程號,由於httpd能自動復制其自身,因此系統中有多個httpd進程,但只有一個進程為最初啟動的進程,它為其他進程的父進程,對這個進程發送信號將影響所有的httpd進程。PidFILE定義的文件中就記錄httpd父進程的進程號。

ScoreBoardFile /var/run/httpd.scoreboard

httpd使用ScoreBoardFile來維護進程的內部數據,因此通常不需要改變這個參數,除非管理員想在一台計算機上運行幾個Apache伺服器,這時每個Apache伺服器都需要獨立的設置文件htt pd.conf,並使用不同的ScoreBoardFile。

#ResourceConfig conf/srm.conf

#AccessConfig conf/access.conf

這兩個參數ResourceConfig和AccessConfig,就用於和使用 srm.conf 和 access.conf 設置文件的老版本Apache兼容。如果沒有兼容的需要,可以將對應的設置文件指定為/dev/null,這將表示不存在其他設置文件,而僅使用httpd.conf 一個文件來保存所有的設置選項。

Timeout 300

Timeout定義客戶程序和伺服器連接的超時間隔,超過這個時間間隔(秒)後伺服器將斷開與客戶機的連接。

KeepAlive On

在HTTP 1.0中,一次連接只能作傳輸一次HTTP請求,而KeepAlive參數用於支持HTTP 1.1版本的一次連接、多次傳輸功能,這樣就可以在一次連接中傳遞多個HTTP請求。雖然只有較新的瀏覽器才支持這個功能,但還是打開使用這個選項。

MaxKeepAliveRequests 100

MaxKeepAliveRequests為一次連接可以進行的HTTP請求的最大請求次數。將其值設為0將支持在一次連接內進行無限次的傳輸請求。事實上沒有客戶程序在一次連接中請求太多的頁面,通常達不到這個上限就完成連接了。

KeepAliveTimeout 15

KeepAliveTimeout測試一次連接中的多次請求傳輸之間的時間,如果伺服器已經完成了一次請求,但一直沒有接收到客戶程序的下一次請求,在間隔超過了這個參數設置的值之後,伺服器就斷開連接。
MinSpareServers 5MaxSpareServers 10

在使用子進程處理HTTP請求的Web伺服器上,由於要首先生成子進程才能處理客戶的請求,因此反應時間就有一點延遲。但是,Apache伺服器使用了一個特殊技術來擺脫這個問題,這就是預先生成多個空餘的子進程駐留在系統中,一旦有請求出現,就立即使用這些空餘的子進程進行處理,這樣就不存在生成子進程造成的延遲了。在運行中隨著客戶請求的增多,啟動的子進程會隨之增多,但這些伺服器副本在處理完一次HTTP請求之後並不立即退出,而是停留在計算機中等待下次請求。但是空餘的子進程副本不能光增加不減少,太多的空餘子進程沒有處理任務,也佔用伺服器的處理能力,因此也要限制空餘副本的數量,使其保持一個合適的數量,使得既能及時回應客戶請求,又能減少不必要的進程數量。

因此就可以使用參數MinSpareServers來設置最少的空餘子進程數量, 以及使用參數MaxSpareServers 來限制最多的空閑子進程數量,多餘的伺服器進程副本就會退出。根據伺服器的實際情況來進行設置,如果伺服器性能較高,並且也被頻繁訪問,就應該增大這兩個參數的設置。對於高負載的專業網站,這兩個值應該大致相同,並且等同於系統支持的最多伺服器副本數量,也減少不必要的副本退出。

StartServers 5

StartServers參數就是用來設置httpd啟動時啟動的子進程副本數量,這個參數與上面定義的MinSpareServers和MaxSpareServers參數相關,都是用於啟動空閑子進程以提高伺服器的反應速度的。這個參數應該設置為前兩個值之間的一個數值,小於MinSpareServers和大於MaxS pareServers都沒有意義。
MaxClients 150

在另一方面,伺服器的能力畢竟是有限的,不可能同時處理無限多的連接請求,因此參數Maxclient s就用於規定伺服器支持的最多並發訪問的客戶數,如果這個值設置得過大,系統在繁忙時不得不在過多的進程之間進行切換來為太多的客戶進行服務,這樣對每個客戶的反應就會減慢,並降低了整體的效率。如果這個值設置的較小,那麼系統繁忙時就會拒絕一些客戶的連接請求。當伺服器性能較高時,就可以適當增加這個值的設置。對於專業網站,應該使用提高伺服器效率的策略,因此這個參數不能超過硬體本身的限制,如果頻繁出現拒絕訪問現象,就說明需要升級伺服器硬體了。對於非專業網站,不太在意對客戶瀏覽器的反應速度,或者認為反應速度較慢也比拒絕連接好,就也可以略微超過硬體條件來設置這個參數。

這個參數限制了MinSpareServers和MaxSpareServers的設置,它們不應該大於這個參數的設置。

MaxRequestsPerChild 30

使用子進程的方式提供服務的Web服務,常用的方式是一個子進程為一次連接服務,這樣造成的問題就是每次連接都需要生成、退出子進程的系統操作,使得這些額外的處理過程占據了計算機的大量處理能力。因此最好的方式是一個子進程可以為多次連接請求服務,這樣就不需要這些生成、退出進程的系統消耗,Apache就採用了這樣的方式,一次連接結束後,子進程並不退出,而是停留在系統中等待下一次服務請求,這樣就極大的提高了性能。

但由於在處理過程中子進程要不斷的申請和釋放內存,次數多了就會造成一些內存垃圾,就會影響系統的穩定性,並且影響系統資源的有效利用。因此在一個副本處理過一定次數的請求之後,就可以讓這個子進程副本退出,再從原始的httpd進程中重新復制一個干凈的副本,這樣就能提高系統的穩定性。這樣,每個子進程處理服務請求次數由MaxRe questPerChild定義。 預設的設置值為30,這個值對於具備高穩定性特點的Linux系統來講是過於保守的設置,可以設置為1000甚至更高,設置為0支持每個副本進行無限次的服務處理。

#Listen 3000

#Listen 12.34.56.78:80

#BindAddress *

Listen參數可以指定伺服器除了監視標準的80埠之外,還監視其他埠的HTTP請求。由於FreeBSD系統可以同時擁有多個IP地址,因此也可以指定伺服器只聽取對某個BindAddress< /B>的IP地址的HTTP請求。如果沒有配置這一項,則伺服器會回應對所有IP的請求。

即使使用了BindAddress參數,使得伺服器只回應對一個IP地址的請求,但是通過使用擴展的Listen參數,仍然可以讓HTTP守護進程回應對其他IP地址的請求。此時Listen參數的用法與上面的第二個例子相同。這種比較復雜的用法主要用於設置虛擬主機。此後可以用VirtualHost參數定義對不同IP的虛擬主機,然而這種用法是較早的HTTP 1.0標准中設置虛擬主機的方法,每針對一個虛擬主機就需要一個IP地址,實際上用處並不大。在HTTP 1.1中,增加了對單IP地址多域名的虛擬主機的支持,使得虛擬主機的設置具備更大的意義。

LoadMole mime_magic_mole libexec/apache/mod_mime_magic.so

LoadMole info_mole libexec/apache/mod_info.so

LoadMole speling_mole libexec/apache/mod_speling.so

LoadMole proxy_mole libexec/apache/libproxy.so

LoadMole rewrite_mole libexec/apache/mod_rewrite.so

LoadMole anon_auth_mole libexec/apache/mod_auth_anon.so

LoadMole db_auth_mole libexec/apache/mod_auth_db.so

LoadMole digest_mole libexec/apache/mod_digest.so

LoadMole cern_meta_mole libexec/apache/mod_cern_meta.so

LoadMole expires_mole libexec/apache/mod_expires.so

LoadMole headers_mole libexec/apache/mod_headers.so

LoadMole usertrack_mole libexec/apache/mod_usertrack.so

LoadMole unique_id_mole libexec/apache/mod_unique_id.so

ClearMoleList

AddMole mod_env.c

AddMole mod_log_config.c

AddMole mod_mime_magic.c

AddMole mod_mime.c

AddMole mod_negotiation.c

AddMole mod_status.c

AddMole mod_info.c

AddMole mod_include.c

AddMole mod_autoindex.c

AddMole mod_dir.c

AddMole mod_cgi.c

AddMole mod_asis.c

AddMole mod_imap.c

AddMole mod_actions.c

AddMole mod_speling.c

AddMole mod_userdir.c

AddMole mod_proxy.c

AddMole mod_alias.c

AddMole mod_rewrite.c

AddMole mod_access.c

AddMole mod_auth.c

AddMole mod_auth_anon.c

AddMole mod_auth_db.c

AddMole mod_digest.c

AddMole mod_cern_meta.c

AddMole mod_expires.c

AddMole mod_headers.c

AddMole mod_usertrack.c

AddMole mod_unique_id.c

AddMole mod_so.c

AddMole mod_setenvif.c
Apache伺服器的一個重要特性就是其模塊化的結構,這不但表現為其能在編譯時能通過新的模塊加入新的功能,還表現為其模塊可以動態載入入http服務程序中,而不必載入不需要的模塊。使用Apache的動態載入模塊只需要設置好Load Mole和AddMole參數就可以了,這種特性就是Apache的 DSO(Dynamic Shared Object)特性,然而要想充分使用DSO特性仍然不是一個簡單的事情,不適當的改動這里的設置就可能造成伺服器不能正常啟動。因此如果不是要增加或減少伺服器提供的功能,就不要改動這里的設置。

上面這些列表就顯示了Linux下的預設Apache伺服器支持的模塊,事實上很多模塊是沒有必要的,不必要模塊不會被載入內存。模塊可以靜態連接到pache 伺服器內部,也可以這樣動態載入,將Apache的特性都編譯成動態可載入模塊是該Port的做法,而不是Apache的預設做法,這樣就以犧牲很小的性能的同時,帶來極大的靈活性。

因而動態可載入的能力還是對性能有輕微的影響,因此可以重新編譯Apache,將自己所需要的功能編譯進Apache 伺服器內部,可以讓系統顯得更為干凈,效率也有輕微的提高。通常僅僅為了這一個目的就重新編譯Apache是沒有必要的,如果需要增加其他特性而重新編譯Apache,不妨在增加其他模塊的同時將所有的模塊都靜態連接入Apache 伺服器。有的使用者更喜歡動態載入模塊,那麼也不妨全部都使用動態載入模塊。

這些模塊都被放置到/usr/local/apache/libexec/目錄下, 每個模塊對應Apache伺服器的一個特性。詳細解釋每個模塊的功能需要相當多的篇幅,其中比較重要的特性將在後面相應的地方中進行解釋,而具體每個模塊的功能及用法就需要查看Apache的文檔。

#ExtendedStatus On

Apache伺服器可以通過特殊的HTTP請求,來報告自身的運行狀態,打開這個ExtendedStatus 參數可以讓伺服器報告更全面的運行狀態信息。

10、Linux中Web伺服器的配置

你可以通過以下三種方法安裝Apache伺服器。

1.如果你安裝的Linux版本中帶用Apache的話,就在選擇所要安裝的服務
器的時候,將httpd這個服務選上,Linux安裝程序將自動完成Apache的安裝工
作,並做好基本的配置。

2.使用可執行文件軟體包,這比較適合那些對編譯工作不是太熟悉的初級
用戶,因為它相對比較簡單。

下載軟體包apache_1.2.4.e.tar.gz

tar xvzf apache_1.2.4.e.tar.gz

這就完成了安裝工作,簡單吧!

如果你使用的是RedHat Linux的話,你也可以下載apache_1.2.4.rpm軟體
安裝包,然後使用rpm -ivh apache_1.2.4.rpm命令安裝。

3.如果你想把Apache伺服器充分利用起來的話,就一定要自己編譯
Apache定製其功能。

下載包含Apache源代碼的軟體包apache_1.2.4.tar.gz; 然後用tar命令將它解
開; 將當前目錄改變為Apache源代碼發行版的src目錄; 將配置樣本文件
(Configuration.tmpl)復制為Configuration文件;

編輯Configuration文件中的配置選項:

Makefile配置選項:一些編譯選項:

. "CC="一行指定用什麼編譯軟體編譯,一般為"CC=gcc";

. 如果需要將額外的標志(參數)指定給C編譯軟體,可以使用:

EXTRA_CFLAGS=

EXTRA_LFLAGS=

. 如果系統需要特殊的庫和包含文件,可以在這里指定它們:

EXTRA_LIBS=

EXTRA_INCLUDES=

. 如果你要改變代碼優化設置的話,你須將下面一句去掉注釋,然

後改成你所需要的值:

#OPTIM=-O2

Rule配置選項:用來決定需要什麼功能,一般情況下無需改變。

模塊配置:模塊是Apache的組成部分,它為Apache內核增加新功能。通過使用
模塊配置,可以自定義在Apache伺服器中需要什麼功能,這個部分也是Apache
靈活性的表現。模塊配置行如下所示:

AddMole moles/standard/mod_env.o

如果你需要Apache伺服器具備什麼功能,就將那個模塊用AddMole語句加到配
置文件Configuration中去。

下表列出了Apache的模塊功能:

模塊名 功能 預設

mod_access 提供基於主機的訪問控制命令 y

mod_actions 能夠運行基於MIME類型的CGI腳本或HTTP請求方法 y

mod_alias 能執行URL重定向服務 y

mod_asis 使文檔能在沒有HTTP頭標的情況下被發送到客戶端 y

mod_auth 支持使用存儲在文本文件中的用戶名、口令實現認證 y

mod_auth_dbm 支持使用DBM文件存儲基本HTTP認證 n

mod_auth_mysql 支持使用MySQL資料庫實現基本HTTP認證 n

mod_auth_anon 允許以匿名方式訪問需要認證的區域 y

mod_auth_external支持使用第三方認證 n

mod_autoindex 當缺少索引文件時,自動生成動態目錄列表 y

mod_cern_meta 提供對元信息的支持 n

mod_cgi 支持CGI y

mod_dir 能夠重定向任何對不包括尾部斜杠字元命令的請求 y

mod_env 使你能夠將環境變數傳遞給CGI或SSI腳本 n

mod_expires 讓你確定Apache在伺服器響應請求時如何處理Expires y

mod_headers 能夠操作HTTP應答頭標 y

mod_imap 提供圖形映射支持 n

mod_include 使支持SSI n

mod_info 對伺服器配置提供了全面的描述 y

mod_log_agent 允許在單獨的日誌文件中存儲用戶代理的信息 n

mod_log_config 支持記錄日誌 y

mod_log_referer 提供了將請求中的Referer頭標寫入日誌的功能 n

mod_mime 用來向客戶端提供有關文檔的元信息 y

mod_negotiation 提供了對內容協商的支持 y

mod_setenvif 使你能夠創建定製環境變數 y

mod_speling 使你能夠處理含有拼寫錯誤或大小寫錯誤的URL請求 n

mod_status 允許管理員通過WEB管理Apache y

mod_unique_id 為每個請求提供在非常特殊的條件下保證是唯一的標識 n

在src目錄下執行:". /configure";

編譯Apache:執行命令"make";

根據機器性能的不同,經歷一段5-30分鍾的編譯,就大功告成了。

將編譯好的可執行文件httpd復制到/etc/httpd/bin目錄下;

將Apache發行版的配置文件:access.conf、httpd.conf、mime.types、
srm.conf文件復制到/etc/httpd/conf目錄下。到此為止,安裝完成。

與linux配置http伺服器配置相關的知識