apache設(shè)置域名綁定 apache域名解析
2024-02-23
更新時(shí)間:2024-02-24 00:14:43作者:佚名
由于這個(gè)解決方案要通過安裝Apache模塊mod_python來(lái)實(shí)現(xiàn),而mod_python的當(dāng)前版本3.3.1只支持Apache 2.2和Python 2.5,所以不得不先?載已經(jīng)裝好的Python 3.0,重新下載安裝了Python 2.5。mod_python是一個(gè)Apache模塊,它可以將Python解釋器嵌入到Apache服務(wù)器中(詳情可以看這里)。
讓Apache支持Python的過程很簡(jiǎn)單,只要3步。
復(fù)制代碼
代碼如下:
AddHandler mod_python .py
PythonHandler mptest
PythonDebug On
這里第一條指令是將所有URL末尾為.py的請(qǐng)求轉(zhuǎn)發(fā)給mod_python處理程序,mod_python接收到請(qǐng)求之后再尋找適當(dāng)?shù)腜ythonHandler處理程序。第二條指令只定義了一個(gè)mptest處理程序。最后一條是啟用Python代碼調(diào)試功能,以便在代碼運(yùn)行出錯(cuò)時(shí)輸出Python解釋器返回的錯(cuò)誤。
完成以上3步之后,就可以編寫Python文件并進(jìn)行測(cè)試了。在py目錄下新建 mptest.py 文件,打開后添加如下代碼:
復(fù)制代碼
代碼如下:
from mod_python import apache
def handler(req):
req.content_type = 'text/plain'
req.write("Hello World!")
return apache.OK
保存。打開瀏覽器,輸入http://localhost/py/mptest.py,回車。看到“Hello World!”了嗎?
實(shí)際上,由于前面只明確將mptest設(shè)置為處理程序,所以無(wú)論瀏覽器URL中的.py文件名是什么(如:login.py、default.py),都將被轉(zhuǎn)發(fā)給mptest.py文件來(lái)處理,都會(huì)返回“Hello World!”。怎么辦呢?長(zhǎng)話短說(shuō),可以將上面第3步中的代碼替換成如下所示:
復(fù)制代碼
代碼如下:
AddHandler mod_python .py
PythonHandler mod_python.publisher
PythonDebug On