国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

詳解如何在Apache中運(yùn)行Python WSGI應(yīng)用

2020-02-16 00:27:09
字體:
供稿:網(wǎng)友

在生產(chǎn)環(huán)境上,一般會使用比較健壯的Web服務(wù)器,如Apache來運(yùn)行我們的應(yīng)用。如果我們的Web應(yīng)用是采用Python開發(fā),而且符合WSGI規(guī)范,比如基于Django,F(xiàn)lask等框架,那如何將其部署在Apache中呢?本文中,我們就會介紹如何使用Apache模塊mod_wsgi來運(yùn)行Python WSGI應(yīng)用。

安裝mod_wsgi

我們假設(shè)你已經(jīng)有了Apache和Python環(huán)境,在Linux或者M(jìn)ac上,那第一步自然是安裝。在Ubuntu或Debian環(huán)境中,你可以使用apt-get命令來安裝:

$ sudo apt-get install libapache2-mod-wsgi$ sudo apt-get install libapache2-mod-wsgi-py3  # For Python 3

不過我們建議采用編譯安裝,這樣在任何系統(tǒng)中都可以安裝成功,具體步驟如下:

1、下載源碼包

mod_wsgi的源碼托管在Github上,你可以從https://github.com/GrahamDumpleton/mod_wsgi/releases下載它各個(gè)版本的源碼包。

2、解壓后,配置編譯選項(xiàng)

一般采用默認(rèn)配置即可,即執(zhí)行:

$ ./configure

如果要指定Apache和Python環(huán)境,那你需要加上”–with-apxs”和”–with-python”選項(xiàng):

$ ./configure --with-apxs=/usr/local/apache/bin/apxs --with-python=/usr/local/bin/python

3、編譯并安裝

$ sudo make && make install

4、在Apache配置文件中載入mod_wsgi

讓我們打開Apache的配置文件httpd.conf,默認(rèn)是在:

$ sudo vi /etc/httpd/conf/httpd.conf  # For Linux$ sudo vi /etc/apache2/httpd.conf   # For Mac

在所有”Load Module”配置項(xiàng)的最后,加上載入mod_wsgi的配置,注意Linux和Mac的模塊加載路徑不同:

LoadModule wsgi_module modules/mod_wsgi.so  # For Linux# LoadModule wsgi_module libexec/apache2/mod_wsgi.so  # For Mac

5、重啟Apache來啟用配置

$ sudo service httpd restart    # For Linux$ sudo service apachectl restart  # For Mac

測試mod_wsgi

最簡單的測試方法自然是Hello World,讓我們在Apache的DocumentRoot根目錄下創(chuàng)建一個(gè)文件”test.wsgi”。在文件中,我們寫入這樣的內(nèi)容:

def application(environ, start_response):  status = '200 OK'  output = 'Hello World!'   response_headers = [('Content-type', 'text/plain'),            ('Content-Length', str(len(output)))]  start_response(status, response_headers)   return [output]

這里的函數(shù)application即為WSGI應(yīng)用對象,它返回的值就是該應(yīng)用收到請求后的響應(yīng)。然后,再打開Apache的配置文件httpd.conf,在其最后加上URL路徑映射:

WSGIScriptAlias /test /var/www/test.wsgi

這里我們假設(shè)Apache的文檔根目錄是”/var/www”。

現(xiàn)在你可以打開瀏覽器,訪問一下”http://localhost/test”,如果看到”Hello World!”了,就說明mod_wsgi已經(jīng)安裝成功。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 南城县| 淳化县| 延津县| 定西市| 瓦房店市| 龙南县| 阜阳市| 南溪县| 河西区| 房产| 任丘市| 娱乐| 延庆县| 庄浪县| 海丰县| 苏尼特左旗| 沙河市| 阳江市| 阿勒泰市| 洱源县| 伊宁县| 蒙阴县| 昌黎县| 霍邱县| 麦盖提县| 平顶山市| 尼玛县| 彭州市| 长寿区| 桂阳县| 石渠县| 绥江县| 丰顺县| 云和县| 孝义市| 特克斯县| 西昌市| 务川| 泸定县| 大渡口区| 石城县|