轉:用APXS編譯Apache模塊

apxs是一個爲Apache HTTP服務器編譯和安裝擴展模塊的工具,用於編譯一個或多個源程序或目標代碼文件爲動態共享對象,使之能夠用LoadModule指令在運行時加載到Apache服務器中。html

1. 進入apache源代碼的modules目錄apache

2. 運行以下命令自動編譯、安裝和修改httpd.conf文件,激活mod_proxy模塊:服務器

apache path/bin/apxs -c -i -a mod_proxy.c proxy_util.cide

選項說明:
-c 執行編譯操做
-i 安裝操做,安裝一個或多個動態共享對象到服務器的modules目錄
-a 自動增長一個LoadModule行到httpd.conf文件,以激活此模塊,若此行存在則啓用之
-A 與-a相似,可是它增長的LoadModule行前有井號前綴(#)
-e 須要執行編輯操做,可與-a和-A選項配合使用,與-i操做相似,修改httpd.conf文件,但並不安裝此模塊工具

3. 重啓apache。spa

 

 

/**********************************************************************************/代理

最 近想把apache2的proxy代理模加添加進去,但ports樹下面沒法找到mod_proxy的ports,經網上查找才知道mod_proxy 是自己在apache2源碼中自帶的,默認安裝的時候沒有編譯進去,須要從新編譯和安裝整個apache2,而且編譯的時候要打開 WITH_PROXY_MODULES選項,但我又不想從新安裝apache,因此使用如下步驟達到此目的。
一、        從新編譯帶有proxy模塊的apache,但不安裝。
#cd /usr/port/www/apache2
#make WITH_PROXY_MODULES=yes

二、        複製編譯好的mod_proxy模塊到apache2的存放模塊的目錄下
#cd /usr/ports/www/apache2/work/httpd-2.0.53/modules/proxy/.libs/
#cp *.so  /usr/local/libexec/apache2/

三、        在http.conf中添加如下代碼來加載模塊
LoadModule proxy_module libexec/apache2/mod_proxy.so
LoadModule proxy_connect_module libexec/apache2/mod_proxy_connect.so
LoadModule proxy_http_module libexec/apache2/mod_proxy_http.so
LoadModule proxy_ftp_module libexec/apache2/mod_proxy_ftp.so

<IfModule mod_proxy.c>;
ProxyRequests On
<Proxy *>;
    Order deny,allow
    Allow from all
</Proxy>;
</IfModule>;

四、        而後在配置代理
(具體代理配置,請查看apache2中文手冊 http://kajaa.bbs.us/ApacheManual/mod/mod_proxy.html) 五、        配置完後,從新啓動apache # /usr/local/etc/rc.d/apache restart
相關文章
相關標籤/搜索