成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專(zhuān)欄INFORMATION COLUMN

Flask+Nginx踩坑記錄

EdwardUp / 1726人閱讀

摘要:再往下就是我踩到的所有坑的記錄啦。第個(gè)坑作為一個(gè)已經(jīng)離不開(kāi)強(qiáng)大自動(dòng)補(bǔ)全的人,踩到的第一個(gè)坑是對(duì)的支持問(wèn)題。第個(gè)坑關(guān)于頁(yè)面跳轉(zhuǎn)間如何獲取當(dāng)前登錄的解決,然后任何都可以使用來(lái)訪問(wèn)當(dāng)前登錄的

因?yàn)橹暗木W(wǎng)站項(xiàng)目使用的是Spring MVC,而且當(dāng)時(shí)為了盡快趕完,代碼結(jié)構(gòu)非常粗暴,還存在大量的copy-paste代碼,然后被師兄批評(píng),然后決定接受師兄的建議,對(duì)網(wǎng)站進(jìn)行重構(gòu),并且使用聽(tīng)說(shuō)可以讓我長(zhǎng)壽一點(diǎn)的python【什么鬼。。?!?/p>

首先我看了廖雪峰老師的python3教程,之前學(xué)習(xí)使用Git的時(shí)候也是看的他的教程,感覺(jué)算是我看過(guò)的最簡(jiǎn)單直白易懂的教程啦。

然后初步了解了一下Flask和jinja2。

再往下就是我踩到的所有坑的記錄啦。

第1個(gè)坑

作為一個(gè)已經(jīng)離不開(kāi)fish-shell強(qiáng)大自動(dòng)補(bǔ)全的人,踩到的第一個(gè)坑是fish-shell對(duì)virtualenv的支持問(wèn)題。

解決:使用virtualfish

第2個(gè)坑

第二個(gè)坑是在Nginx上部署Flask應(yīng)用的問(wèn)題,個(gè)人非常不喜歡直接修改系統(tǒng)文件夾(例如/開(kāi)頭的文件夾)的部署方式,無(wú)奈這好像是Nginx的標(biāo)準(zhǔn)流程,我遇到的問(wèn)題是:部署完應(yīng)用后輸入ip:port只出現(xiàn)Nginx的歡迎界面,我看的教程是這個(gè),每一步我都按照它的流程做呢,結(jié)果打開(kāi)之后,跟它的不一樣,坑我呢!

解決:查看log文件(/var/log/nginx/error.log)。最后發(fā)現(xiàn)是我忘記創(chuàng)建 .sock 文件(Linux一切皆文件嘛,這個(gè)文件其實(shí)是個(gè)socket)了,在工程目錄下創(chuàng)建完成后,發(fā)現(xiàn)并沒(méi)有效果。之后觀察/etc/nginx/文件夾,發(fā)現(xiàn)其中有一個(gè)conf.d文件夾,好多.d結(jié)尾的都是啟動(dòng)文件夾(例如init.d啦),所以我進(jìn)去查看了一下,發(fā)現(xiàn)里面默認(rèn)的配置文件跟教程中應(yīng)用的配置文件完全相同,所以我就把默認(rèn)的刪了,直接把應(yīng)用的配置文件文件拷進(jìn)去,然后重啟應(yīng)用、重啟nginx,然后應(yīng)用就可以正常訪問(wèn)啦~!

第3個(gè)坑

趕完一波ddl之后,繼續(xù)重構(gòu),今天一運(yùn)行,發(fā)現(xiàn)js和css全都失效了!

解決:原來(lái)是原template文件里引用靜態(tài)文件的時(shí)候忘記加/static了,不過(guò)之前為啥能正常運(yùn)行?百思不得其解……

第4個(gè)坑

準(zhǔn)備按照這個(gè)方法來(lái)加入用戶(hù)登錄驗(yàn)證,然后提示AttributeError: "LoginManager" object has no attribute "token_loader"

解決:把token_loader替換成request_loader

第5個(gè)坑

遇到502錯(cuò)誤,查詢(xún)?nèi)罩?,發(fā)現(xiàn)是這樣的:upstream prematurely closed connection while reading response header from upstream, client: 127.0.0.1, server: , request: "GET / HTTP/1.1", ...(省略)

解決:在成功運(yùn)行過(guò)的基礎(chǔ)上,遇到這個(gè)錯(cuò)誤一般是server本身出錯(cuò)。我自己的話(huà)是這樣的:myapplication.py沒(méi)有錯(cuò),但是views.py有錯(cuò),可以成功import myapplication但是一解析url就出錯(cuò)。修改views.py就好。

第6個(gè)坑

關(guān)于頁(yè)面跳轉(zhuǎn)間如何獲取當(dāng)前登錄的User

解決:from flask_login import current_user,然后任何view都可以使用current_user來(lái)訪問(wèn)當(dāng)前登錄的User

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/39393.html

相關(guān)文章

  • mdwiki開(kāi)發(fā)之路二資源與踩坑記錄

    摘要:側(cè)邊欄選用提到的。將改成來(lái)訪問(wèn)的形式組織代碼出現(xiàn)循環(huán)的問(wèn)題往往意味著代碼的布局有問(wèn)題,可以合并或者分離競(jìng)爭(zhēng)資源。分離的話(huà)就是把需要的資源提取到一個(gè)第三方文件去??傊褪菍⒀h(huán)變成單向。對(duì)于周期性任務(wù)缺一不可。其他任務(wù)可僅運(yùn)行。 1、bootstrap代碼片段: 如果你沒(méi)有藝術(shù)細(xì)胞,偷懶的方法就是到這上面去找,比如登錄框界面等。側(cè)邊欄選用:http://www.designerslib....

    molyzzx 評(píng)論0 收藏0
  • mdwiki開(kāi)發(fā)之路二資源與踩坑記錄

    摘要:側(cè)邊欄選用提到的。將改成來(lái)訪問(wèn)的形式組織代碼出現(xiàn)循環(huán)的問(wèn)題往往意味著代碼的布局有問(wèn)題,可以合并或者分離競(jìng)爭(zhēng)資源。分離的話(huà)就是把需要的資源提取到一個(gè)第三方文件去??傊褪菍⒀h(huán)變成單向。對(duì)于周期性任務(wù)缺一不可。其他任務(wù)可僅運(yùn)行。 1、bootstrap代碼片段: 如果你沒(méi)有藝術(shù)細(xì)胞,偷懶的方法就是到這上面去找,比如登錄框界面等。側(cè)邊欄選用:http://www.designerslib....

    linkFly 評(píng)論0 收藏0
  • 使用Docker部署Nginx+Flask+Mongo的應(yīng)用

    摘要:應(yīng)用無(wú)法連接,本文使用方式。在數(shù)據(jù)庫(kù)的配置應(yīng)相應(yīng)寫(xiě)成地址一定要寫(xiě)你配置的的名字本地測(cè)試時(shí)改回中配置使用的代理模式,其中執(zhí)行應(yīng)用的,應(yīng)為內(nèi)網(wǎng) 使用Docker部署Nginx+Flask+Mongo的應(yīng)用 Nginx做為服務(wù)器,Mongo為數(shù)據(jù)庫(kù)支持,F(xiàn)lask為Python語(yǔ)言的Web框架,利用Docker的容器特性,可以簡(jiǎn)單地部署在linux服務(wù)器上 項(xiàng)目準(zhǔn)備 項(xiàng)目主要目錄如下 __ ...

    afishhhhh 評(píng)論0 收藏0
  • 使用Docker部署Nginx+Flask+Mongo的應(yīng)用

    摘要:應(yīng)用無(wú)法連接,本文使用方式。在數(shù)據(jù)庫(kù)的配置應(yīng)相應(yīng)寫(xiě)成地址一定要寫(xiě)你配置的的名字本地測(cè)試時(shí)改回中配置使用的代理模式,其中執(zhí)行應(yīng)用的,應(yīng)為內(nèi)網(wǎng) 使用Docker部署Nginx+Flask+Mongo的應(yīng)用 Nginx做為服務(wù)器,Mongo為數(shù)據(jù)庫(kù)支持,F(xiàn)lask為Python語(yǔ)言的Web框架,利用Docker的容器特性,可以簡(jiǎn)單地部署在linux服務(wù)器上 項(xiàng)目準(zhǔn)備 項(xiàng)目主要目錄如下 __ ...

    sorra 評(píng)論0 收藏0
  • 使用Docker部署Nginx+Flask+Mongo的應(yīng)用

    摘要:應(yīng)用無(wú)法連接,本文使用方式。在數(shù)據(jù)庫(kù)的配置應(yīng)相應(yīng)寫(xiě)成地址一定要寫(xiě)你配置的的名字本地測(cè)試時(shí)改回中配置使用的代理模式,其中執(zhí)行應(yīng)用的,應(yīng)為內(nèi)網(wǎng) 使用Docker部署Nginx+Flask+Mongo的應(yīng)用 Nginx做為服務(wù)器,Mongo為數(shù)據(jù)庫(kù)支持,F(xiàn)lask為Python語(yǔ)言的Web框架,利用Docker的容器特性,可以簡(jiǎn)單地部署在linux服務(wù)器上 項(xiàng)目準(zhǔn)備 項(xiàng)目主要目錄如下 __ ...

    fyber 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

閱讀需要支付1元查看
<