天天看點

新浪雲SAE搭建python環境 問題拾遺

1、python程式部署到sae上需要做的改動

線上上需要轉換成wsgi的形式運作python程式。

sae中運作python程式需要指定一個函數為入口函數。

application = sae.create_wsgi_app(main)      

main函數是你定義的入口函數,在這裡面你可以調用你定義的其它函數。

sae.create_wsgi_app(main) 建立main為入口函數,将入口位址傳回給application。

運作這個程式的時候sae會直接找到application,運作這個python程式。

另外入口函數(main)必須要有兩個參數:environ 和 start_response

是以你的入口函數要這樣寫:

1 def main(environ,start_response):
2     status = '200 OK'
3     response_headers = [('Content-type','text/plain')]
4     write = start_response(status,response_headers)
5 
6     return ['Hello world']      

這裡面定義了一個傳回的包,status為狀态碼,200表示成功,response_headers為包的頭部,return傳回body的内容,組合起來就是一個完整的包。

sae中運作python程式基本就要做這些改變,你的其它程式可以在main函數的基礎上擴充。另外還有sae不支援一些第三方庫的問題,這一節不贅述了。

關于程式的設定詳見官方文檔:請求處理

2、sae git 送出記住使用者名、密碼

詳見:使用GitBash記住在新浪Sae上Git倉庫的帳号密碼,以後再也不用輸帳号密碼啦!

3、運作 git 腳本

調試的時候每次重複輸入幾條指令比較麻煩?試試将所有指令寫成一個小腳本來運作!

使用方法:

git config --global alias.push1 '!git add . && git commit -m "update" && git push sae master:1'      

git控制台中直接運作:

git push1      

就可以運作這個腳本啦!

參考自:Git批處理腳本

4、wsgi處理get請求

參考自:web python -- WSGI接口GET請求

 WSGI接口 <==處理url路徑問題

Freecode# : www.cnblogs.com/yym2013