在linux中使用原始碼安裝httpd伺服器

2021-08-03 15:00:26 字數 4372 閱讀 2102

前天在centos中安裝了apache的httpd,安裝的機器在公司內網,於是選擇了原始碼進行安裝。俗話說好記性不如爛筆頭,現將安裝過程進行記錄,也希望能幫到各位網友。

準備工作

因公司機器已經安裝c++編譯相關,該工作不再贅述,如無法使用make相關命令,請自行安裝g++、libc等庫。

筆者寫這篇博文時選中的版本是httpd-2.4.23.tar.gz

apache portable runtime(apr),為上層的應用程式提供乙個可以跨平台使用的底層支援介面庫。筆者選定的版本仍為官網最新版本apr-1.5.2.tar.gz

apr-util-1.5.4.tar.gz

pcre,該模組主要為httpd提供了rewrite功能,筆者選定了pcre-8.38.tar.gz

lynx及其依賴ncurses,其中lynx是純文字瀏覽器,httpd的執行status命令時會訪問server-status,lynx用於解析html並輸出文字資訊,它依賴於ncurses,curses庫是可以在linux終端中寫出字元使用者介面,新的版本是ncurses庫。不安裝lynx及ncurses也可以,使用curl訪問server-status鏈結即可。

安裝過程

分別使用tar -xvzf命令解壓縮各tar.gz,筆者將各壓縮包解壓在/opt/downloads下,依次執行以下的安裝命令。

安裝ncurses(不使用lynx請跳過)

cd /opt/downloads/ncurses-6.0/

./configure --prefix=/usr/local/ncurses

make

make install

安裝lynx

cd /opt/downloads/lynx2-8-

8/./configure --prefix=/usr/local/lynx --

with

-curses

-dir

=/usr/local/ncurses

make

make install

安裝apr

cd /opt/downloads/apr-1.5

.2./configure --prefix=/usr/local/apr

make

make install

安裝apr-util

cd /opt/downloads/apr-util

-1.5

.4./configure --prefix=/usr/local/apr-util

--with

-apr

=/usr/local/apr

make

make install

安裝pcre

cd /opt/downloads/pcre-

8.38

./configure --

with

-apr

=/usr/local/pcre

make

make install

安裝httpd

make install至此,httpd安裝完畢。

上面命令所使用到的./configure後的引數說明:(可執行./configure --help檢視支援的引數,在執行./configure命令後,可使用echo $?檢視是否有錯誤,返回0說明沒問題,可繼續執行make命令)

#--prefix=指定便以後的二進位制檔案安裝目錄,若省略使用預設目錄

#--with-***一般指定其載入的模組路徑

--enable-module=so指明編譯動態載入模組,使得apache的各模組與核心分開編譯,執行時動態載入,最新版已預設編譯此模組

--enable-deflate支援網頁壓縮

--enable-expires通過配置檔案控制http的「expires:」「cache-control:」頭內容,即對**、js、css等內容,提供客戶端瀏覽器快取的設定

--enable-rewrite支援url重寫

以下為本次未使用的引數說明:

--enable-cache支援快取

--enable-file-cache支援檔案快取

--enable-mem-cache支援記憶快取

--enable-disk-cache支援磁碟快取

--enable-static-support支援靜態連線(預設為動態連線)

--enable-static-htpasswd使用靜態連線編譯 htpasswd - 管理用於基本認證的使用者檔案

--enable-static-htdigest使用靜態連線編譯 htdigest - 管理用於摘要認證的使用者檔案

--enable-static-rotatelogs使用靜態連線編譯 rotatelogs - 滾動 apache 日誌的管道日誌程式

--enable-static-logresolve使用靜態連線編譯 logresolve - 解析 apache 日誌中的ip位址為主機名

--enable-static-htdbm使用靜態連線編譯 htdbm - 操作 dbm 密碼資料庫

--enable-static-ab使用靜態連線編譯 ab - apache http 伺服器效能測試工具

--enable-static-checkgid使用靜態連線編譯 checkgid

--disable-cgid禁止用乙個外部 cgi 守護程序執行cgi指令碼

--disable-cgi禁止編譯 cgi 版本的 php

--disable-userdir禁止使用者從自己的主目錄中提供頁面

配置httpd

修改httpd.conf檔案

去除servername的注釋,並修改設定其值,如localhost:80

若要開啟server-status監控httpd的執行狀態,需在httpd.conf中開啟對httpd-info.conf的引用,並修改http-info.conf的相關配置,參照如下

order

deny,allow

deny

from all

allow

from 127.0.0.1

使用一下命令註冊httpd為service

#description:apache並為該檔案新增可執行的許可權

chmod +x /etc/init.d/httpd
新增httpd為服務

chkconfig--

addhttpd

現在可以使用service httpd start|stop|status等命令操作了

just enjoy it!

linux 原始碼安裝

原始碼的安裝一般由3個步驟組成 配置 configure 編譯 make 安裝 make install 具體的安裝方法一般作者都會給出文件,這裡主要討論配置 configure configure是乙個可執行指令碼,它有很多選項,使用命令.configure help輸出詳細的選項列表,如下 ba...

linux原始碼安裝

原始碼的安裝一般由3個步驟組成 配置 configure 編譯 make 安裝 make install configure是乙個可執行指令碼,它有很多選項,在待安裝的原始碼路徑下使用命令.configure help輸出詳細的選項列表。其中 prefix選項是配置安裝的路徑,如果不配置該選項,安裝...

Linux 原始碼安裝

原始碼包是開源的,更自由,安裝更慢,容易出錯,可以定製功能,需要編譯rpm包安裝快,不自由,安裝方便,不易出錯,原始碼包由於安裝在固定的位置,所以和此軟體有關的內容都不在安裝目錄之下,但我們要刪除它時,能將所有東西全部刪除,很方便 具體的最直觀的不同 rpm包會安裝在系統預設的位置,而原始碼包是手工...