Flask教學_WSGI_Nginx_Max行銷誌

【Flask教學系列】Flask 為甚麼需要 WSGI 與 Nginx

假設我們使用 Python Flask 框架寫了一個網站,現在要讓他可以在網頁上運行,我們會需要: 使用 Apache / Nginx 擇一做為反向代理伺服器:負責靜網頁與動態網頁請求和結果的回覆 使用 gunicorn / uWSGI 擇一做為 WSGI 伺服器:負責接收代理伺服器的請求後,轉發給 Flask 以及接收 Flask 返回信息轉發給 Nginx Flask 收到請求後處理數據並返回頁面給 uWSGI 伺服器。 一. Flask 為什麼需要 gunicorn / uWSGI 首先我們先了解什麼是 gunicorn / uWSGI 與 WSGI 的關係: ▍什麼是 WSGI: Between the server and the application, there may be […]

閱讀全文
git_快捷鍵_設定_Max行銷誌

【Git教學】 如何設定 Git 快捷鍵指令

本篇整理了如何設定 git 常用的快捷鍵,介紹了使用 git config 方法,和 zsh 終端機中,自帶的 git plugin 快捷鍵,設定好後就不需要再一次次的使用 git add、git commit、git push 指令,只需要改寫成 ga、gcmsg、gp,是不是超方便呢! 一. Oh-My-Zsh 自帶的 git plugin 快捷鍵 如果有使用 Oh-My-Zsh 的朋友,zsh 本身就有帶有 git plugin 套件,當你下指令 alias,就會看到 zsh 已經先幫我們配置許多的 git 快捷鍵設定,當然也可以自行加入或修改。 以下是筆者在 zsh 常用到的 git 快捷鍵列表 zsh 存放 git alias 的位置 二. git config 配置快捷鍵 如果沒 […]

閱讀全文
git_恢覆版本_reset_checkout_Max行銷誌

【Git教學】Git 時光機回復版本的 2 種方法 reset & checkout

一. git reset Git 的 Reset 指令用中文來說比較像是「前往」,而 git reset 指令可以搭配參數使用,常見到的參數,是 –soft 以及 –hard 模式。 ▍git reset –soft 模式 這個模式下的 reset,工作目錄跟暫存區的檔案都不會被丟掉,所以看起來就只有 HEAD 的移動而已。也因此,Commit 拆出來的檔案會直接放在暫存區。 ▍git reset –hard 模式 在這個模式下,不管是工作目錄以及暫存區的檔案都會丟掉。 那如果要把這些被丟掉的檔案找回來怎麼辦? 別擔心使用 git reflog,可以看到 reset 前的紀錄,然後再使用 git reset <commit ID> […]

閱讀全文
git_branch_rebase_merge_Max行銷誌

【Git教學】分支合併: merge 與 rebase 差異

ㄧ. 什麼是分支 branch 在開發軟體時,可能同時會有多人在開發同一功能或修復錯誤,也可能會有多個發佈版本的存在,並且需要針對每個版本進行維護。為了能支援同時進行數個功能的增加或版本控制,Git 具備了分支的功能。 二. 分支 branch 基礎操作 1. 建立分支 2. 切換指定分支 3. 查看目前所有本地分支 4. 刪除指定分支 三. 分支 branch 合併操作 1. merge 篇 在使用 merge 合併分支的時候,git 預設會以 fast-forward 的模式進行,那什麼是 fast-forward 和 no-fast-forward 呢?我們來看以下的動圖範例: ▍fast-forward ▍no-fast-forward 可以很清楚的看到同樣都是 merge,使用 n […]

閱讀全文
Flask教學系列_JWT_Max行銷誌

【Flask 教學系列】淺談 JWT 與 Flask JWT 實作

一. 前言 在 www 的世界中,Client 與 Server 間的溝通需透過 HTTP 協定發送 request 和接收 response,但因為 HTTP 協議 stateless 無狀態的設計,代表著 Client 與 Server 兩端不會記得先前的狀態,Client 每次發送請求 request 都會被視為是獨立的,也就是說 Server 無法知道 Client 是否已經發送過認證請求。 而為了讓 HTTP 請求保有狀態,上次在 【Flask教學】Flask Session 使用方法和介紹 中介紹了 Cookie 與 Session 的結合(Server Side Session 和 Client Side Session)。將 Session Information […]

閱讀全文