洪門鎮的前身為硝石古鎮,是西漢高祖五年(前202)南城始設縣所在地,歷史上曾是“八方重鎮,入閩咽喉”之地及南城縣政治文化活動中心,縣治在此482年。
1949年前夕屬六區,1949年10月后仍屬六區,1958年稱洪門公社,1968年并入龍湖公社稱紅湖公社,1972年劃出仍稱洪門公社。
1984年5月12日改公社建制為鄉建制,劃出包坊、李敖、上烏石三個大隊與上唐公社劃出的棠下、姑余、坊頭三個大隊成立包坊鄉,仍稱洪門鄉。
1985年3月15日,經江西省人民政府批準,撤鄉設鎮,稱洪門鎮。
2001年,撤銷包坊鄉,將包坊、李敖、上烏石三個村劃入洪門鎮。
同年11月,又將包坊、李敖、上烏石三個村劃歸上唐鎮,沿用至今。