西汉元封二年(公元前109),汉王朝以滇池地区为中心置益州郡,设24县,今西山区域为谷昌县领地。三国时期归蜀,改益州郡为建宁郡。晋时为晋宁郡,隋为昆州。唐武德元年(618)复置昆州于滇池西岸,今区境域属州治益宁县。广德二年(764)张建城于昆阳领属地海口,建拓东龟城(今白塔村),以统辖滇池沿岸。唐、宋时期入南诏、大理国,分别属拓东节度使、鄯阐府领地。宝祜三年(1255)大理国设鄯阐府,今区境域大部分为万户、千户和巨桥万户府辖地。元初设昆明二千户,隶属鄯阐万户府,此时,西山区域大部分为鄯阐万户府和巨桥万户府辖地。至元十二年(1275)改置善州及昆明、官渡两县。至元十三年(1276),改善州为中庆路,下设昆明县,不久,并官渡入昆明县,路治昆明,以昆明作为滇池地区行政区名沿用至今。当时今区域大部分为昆明县辖地,其余为昆阳州的一部分。
明洪武十五年(1382),改中庆路为云南府,云南府下设昆明、昆阳等11个州县。昆明为府治,附郭辖左、右、中、前、后五卫及广南卫。今区境域为右卫的一部分。昆明县乡村设置25里,其中的黑林里、沙浪里、班庄里、利一里、普坪里、石鼻里、高峣里等是今区域(指2004年区划调整前的西山区,下同)。清朝初期沿袭明制。清末同治、光绪年间(1862~1897),改里为堡,昆明县辖43堡,其中大渔堡、海源堡、西华堡、沙朗堡、厂口堡、土堆堡、大西堡、张家堡、高峣堡,明朗堡、多依堡、乐亩堡,头村堡,范竹堡、桃园堡等15堡为今西山区域。明、清至民国时期海口为昆阳州辖地。
民国初期,乡村区划沿袭清制。民国27年(1938),昆明县改堡为乡,设8区6镇39乡,今区境为第五区的范竹乡及莲花乡、北仓乡部分地;第六区的沙朗乡、厂口乡、龙庆乡、桃园乡;第七区的西马乡、西华乡、土堆乡、张家乡、云林乡、海源乡、碧鸡乡及大渔镇;第八区的多依乡、明朗乡、乐亩乡、永靖乡等4区1镇18乡。民国28年(1939),推行保甲制度,昆明县设10乡6镇,区内为大渔镇、灵源乡、北新乡、玉案乡、西碧乡及范的乡部分地。
1949年12月底,昆明市各区成立区民联谊会和基层街支会,取代民国时期8个区的行政职能(1951年3月撤销)。今区境域为昆明县玉案乡、西碧乡、灵源乡、苍竹乡、北新乡和大渔镇,人口为81330人。1950年3月23日,昆明县人民政府建立,隶属武定专署。4月境内划为中共昆明县灵源区和高蛲区;8月30日昆明县由武定专区划入昆明市管辖,县名保留。9月14日昆明县在原16乡镇基础上建置6个区,今西山区为第五(原灵源区)、六区(原高蛲区),区公所分别在海源寺、高蛲。10月22日昆明县人民政府宣布废除保甲制度。1952年6月5日,昆明县改为10个区,第五、六、九、十区为今西山区辖地(原五、六区)。同年9月1日,昆明县又划为7个区,第五、六、七区为今西山区辖地。1953年昆明县五、六、七区第一次人口普查:总户数20281户,总人口82476人。
1953年7月20日,昆明市县合并,撤销昆明县建制,昆明市建10个区,城区为第一、二、三、四区,郊区为第五、六、七、八、九区,第八、九区为今西山区辖地(原五、六、七区)。1954年1月,原昆阳县第三区(海口地区)划归昆明市,改称为昆明市第十区。第八、九、十区为今西山区辖地,区公所驻龙院村、马街、海口。1955年3月24日,昆明市第八区人民委员会成立;3月29日昆明市第九区人民委员会成立。1953年7月~1956年9月,昆明市第八区辖:团结、海源寺、联家、沙朗、梁源、桃源、龙庆、厂口、迄六、瓦恭乡共10个乡。第九区辖:积善、马街、碧鸡、风华、明朗、棋台、龙潭、永靖、雨花、律则、谷律、乐亩乡共12个乡。1954年1月~1956年9月,昆明市第十区辖:白鱼乡、和平乡、里仁乡、中宝乡、中平乡、双哨乡共6个乡。
1956年10月11日,设立西山区,辖原昆明市第八区、第九区所辖22个乡,驻地马街,辖区面积875.388平方千米。同月,昆明市第十区更名为海口区。1958年10月,西山区成立东风、团结、上游3个公社,分别驻梁家河、龙潭、厂口。原22个小乡和由五华区划入的近华、红联两乡改为管理区(注:红联乡、近华乡为红联管理区管理),共辖24个管理区,3个街道办事处,面积876.513平方千米。同年12月21日,海口区撤销区建制,划归安宁县管辖,原6个高级农业生产合作社合并为海星公社。1959年海口改建为昆明市海口国营农场。
1960年5月,调整社队规模,西山区改建成东风、海联、碧鸡、团结、谷律、上游、沙朗7个公社。公社驻地分别在梁家河、龙院村、高峣,龙潭、鲁伯祖、厂口、沙朗。1961年4月12日昆明市第四国营农场(海口国营农场)划归西山区管辖,改称西山区海口国营农场(后改为海口公社),驻地中新街。西山区面积增至1053.3平方千米。1961年6月8日,东风、团结、上游3个公社划建为东风、海联、碧鸡、团结、谷律、沙朗、厂口7个公社,加海口公社,全区共8个公社。
1962年,西山区辖8个公社。东风公社:驻梁家河,辖红联、洪园、明波、积善、张峰、大渔、普坪、马街、近华、梁源10个生产大队。海联公社:驻龙院村,辖团山、海源、大塘、联家、普吉、昭宗6个生产大队。碧鸡公社:驻高峣,辖碧鸡、龙门、长坡、猫猫箐、富善、西华、黑荞母、观音山8个生产大队。海口公社:驻中新村,辖中新、白鱼、海门、里仁、和平、中宝、桃树、中平、云龙、青鱼、双哨11个生产大队。团结公社:驻多依村,辖和平、大兴、白眉、棋台、妥吉、龙潭、雨花、花红园、永靖、下冲10个生产大队。谷律公社:驻鲁伯祖,辖朵亩、蔡家、乐亩、谷律、妥排、律则6个生产大队。沙朗公社:驻沙朗,辖大村、东村、桃园、三多、龙庆、陡坡6个生产大队。厂口公社:驻厂口,辖厂口、新民、陡普鲁、瓦恭、迤六5个生产大队。
1963年1月,西山区将8个公社划为21个公社,其中属三级所有制的有:东风、马街、碧鸡、凤华、海联、海口6个公社;属两级所有制的有:龙潭、厂口、瓦恭,迤六、沙朗、龙庆、桃园、永靖、棋台、雨花、红花园、明朗、谷律、乐亩、律则15个公社。1964年1月25日,西山区委将21个公社调整恢复原8个公社,下辖管理区改为62个生产大队。1964年第二次人口普查:西山区总户数35704户,总人口185304人。
1968年9月30日,西山区人民委员会改称西山区革命委员会,大队改称生产领导小组,62个生产大队改为62个生产小组。1977年11月,属西山区厂口公社的迤六、瓦恭两个大队划归富民县散旦公社,区境面积减少至994.991平方千米。1980年7月,迤六、瓦恭两地由富民县划入厂口公社,区境面积增至1053.3平方千米。1981年西山区革命委员会改称区人民政府。(主要根据《西山区志》,有改动)