據獅子崗、紫林崗、宮頭垟、金鐘履地等古文化遺址考古發現,今司前鎮境內早在新石器晚期,即中原王朝商、周之際到春秋戰國時期已有古人類生存。
唐宋時期,司前一帶總地名稱“百丈林”。
明朝景泰三年(1452),司前屬瑞安縣義翔鄉轄地,就今司前鎮全境而言,以三插溪為界,溪以西屬瑞安六十都,溪之東的峰門、徐宅各村及黃步山屬五十六都。
泰順建縣后,今司前全鎮范圍大部分屬第一都,峰門、徐宅及黃步山等少數村莊屬第三都。
1935年起,今司前鎮全境屬泰順縣第一區。
1946年,改屬百丈區。
1950年7月改屬羅陽區。
1951年1月,屬司前區。
1952年4月改屬第二區(百丈區)。
1958年11月,改屬司前人民公社,其中今峰門、徐宅等村屬百丈人民公社。
1961年9月屬百丈區。
1984年7月復設司前區,鎮域除峰門、徐宅等各村外,都歸屬司前區。
1992年司前、里光二鄉合并,建立司前畬族鎮。
2011年4月,黃橋、峰門二鄉并入司前畬族鎮。