西汉元封二年(前109年),属律高县。
南宋宝祐元年(1253年),属广西路。
元、明时,出现十八寨。明嘉靖元年(1522年),置十八寨守御千户所。
清顺治十五年(1658年),改设部、推之官,沿用明制直属云南省军事指挥机构。清康熙七年(1668年),撤守御所,置伍官之制,属弥勒。
民国二十二年(1933年),设区公所,虹溪属二区。民国三十年(1941年),二区改为设虹溪、复兴(巡检司)两镇。民国三十八年(1949年)2月27日,解放虹溪;同年3月1日,成立解放委员会;同年8月2日,撤销;同年8月10日,成立弥勒县第二区。
1958年10月,成立虹溪公社。
1962年10月,恢复虹溪区建制。
1963年10月,虹溪、五山合并为虹溪公社。
1984年4月,改虹溪公社为虹溪区。
1987年,由虹溪区改为虹溪镇。[1]
1987年,虹溪镇辖9个街道办事处。
2000年,街道办事处改为行政村,虹溪镇辖9行政村、1社区、86自然村、89村民小组。
截至2011年末,虹溪镇辖虹溪1个社区,白云、密纳、文笔、刘家、太和、新桥、招北、啥咩、虹溪9个行政村;下设89个村民小组。[1]
截至2020年6月,虹溪镇辖1个社区、8个行政村:虹溪社区、啥咩村、招北村、新桥村、密纳村、太和村、文笔村、刘家庄村、白云村,[2] 镇人民政府驻十八大街。[1]
虹溪镇地处弥勒市西南部,东与竹园镇相邻,南与巡检司镇接壤,西接五山乡,北接新哨镇,距弥勒市城40千米,[1] 区域总面积156.74平方千米。[5]
虹溪镇
虹溪镇境内地势西高东低,自西向东倾斜,地形为四周环山、中间平坦的封闭盆地,属典型喀斯特地貌;海拔在1400—1945米之间。[1]
虹溪镇属亚热带季风气候,其特点是四季不分明,但干湿季节分明;多年平均气温16.8℃,极端最高气温33.5℃,极端最低气温-0.1℃;年平均降水量800毫米;霜冻期年平均90天;[1] 年平均降雨量为800—950毫米。