自唐以來屬萊州府昌陽縣,明洪武二年(1369),改稱登州府萊陽縣芝山鄉;1930年改新區制,南墅鎮屬第七區:1935年廢區,改稱南墅鄉校,1941年萊東縣析出,南墅鎮唐家村以北劃為第九區,稱萌山區,以南劃為第八區,稱院上區,1952年兩區合并,稱一區,即南墅區,又稱萌山區,區治在南墅。
1958年春撤萌山區,建南墅鄉和河里吳家鄉兩處,1958年9月實行“政社合一”體制,兩鄉分稱為南墅人民公社和河里吳家人民公社,1959年7月再次合并,稱南墅人民公社。
1962年南墅人民公社析出10個自然村與馬連莊析出的39個自然村合并成立了唐家莊人民公社,1972年11月,河里吳家人民公社復由南墅人民公社析出,1984年4月,撤銷“政社合一”體制。
兩人民公社分別改稱南墅鎮和河里吳家鄉,2001年1月區劃調整,原唐家莊鎮西部的17個自然村與南墅鎮,河里吳家鄉合并,為南墅鎮。