版權聲明

所有的部落格文章都可以在右邊[blog文章原始檔案]下載最原始的文字檔案,並依你高興使用 docutil 工具轉換成任何對應的格式方便離線閱覽,除了集結成書販賣歡迎任意取用,引用

Apache + mod_python 安裝筆記

安裝

在 ubuntu 上安裝 apache 沒有遇到什麼問題, 造說明來作很簡單一下就做好了, 啟動時 候記得要使用 root 權限, 非 root 權限沒有 listen port 80 的權限.

% sudo apachectl start

mod_python

mod_python 在 configure 的時候由於我的 python 2.5 是使用 ubuntu package安裝 的, 似乎沒有他要的 head file..

  • 去套件管理程式把python2.5 develop package 裝上.. 就OK了, 不然去抓source然後 自己make install也一樣會得到 build mod_python 要使用的檔案.

搞定 python 後, configure 還是有 flex warring... 我裝就是了, 裝完後果然沒有 warring了...這不是廢話嗎?

% make

還是有問題,怎麼這麼不順阿, mod_pytho 的 mail-list 有找到相關說明, 假如你的error 也是長這樣.

> structure or union
> apxs:Error: Command failed with rc=65536
> .
> make[1]: *** [mod_python.so] Error 1
> make[1]: Leaving directory `/root/mod_python-3.3.1/src'

請使用svn check out 新的fix版本.

% svn co https://svn.apache.org/repos/asf/quetzalcoatl/mod_python/trunk/ mod_python

接下來當然是執行 sudo make install, 請注意他吐出來的訊息, 開頭部份告訴你呆會怎樣設定 Apache, 下面是我的電腦吐出來的訊息

Performing DSO installation.

/usr/bin/install -c -d /usr/local/apache2/modules
/usr/bin/install -c src/mod_python.so /usr/local/apache2/modules

Now don't forget to edit your main config and add
   LoadModule python_module /usr/local/apache2/modules/mod_python.so
and if your configuration uses ClearModuleList, then also
   AddModule mod_python.c

最後再去 apache安裝目錄/conf/http.conf 加上剛剛make install告訴你要加的就好了.. 這邊為了待會的測試我順到一起加上了directives.

#Direct mod_python
LoadModule python_module /usr/local/apache2/modules/mod_python.so
#Test mod_python , 因為blogger很笨我必須要避開語法
#複製貼上時下面 [ 請用 < 取代
[Directory /Apace安裝目錄/htdocs/test>
       AddHandler mod_python .py
       PythonHandler mptest
       PythonDebug On
[Directory>

測試 mod_python 是否裝好, 到你的site下面(通常是 apache安裝目錄/htdocs) 建立 test

% mkdir test

建立測試的python檔案 mptest.py

from mod_python import apache

def handler(req):
   req.content_type = 'text/plain'
   req.write("Hello World!")
   return apache.OK

網址輸入 http://127.0.1.1/test/mptest.py

應該會看到東西...(Hello World!)

沒有留言:

Related Posts with Thumbnails