(一)金城 漢武帝元狩二年(公元前121年)秋,霍去病出兵河西抗擊匈奴,其部下大行李息在今西固城以西築城,即漢金城縣址。位於今西固城附近。一說位於今西固鄉寺兒溝村以西,距今西固城約1.5公裡。
(二)西古城 宋元豐四年(1081年)置西關堡,位於西固川西南部,距南山約1公裡,北距黃河南岸2.5公裡。元豐六年(1083年)廢。宋元佑二年(1087年)補修。至明弘治十二年(1499年)蘭州衛指揮使周倫重修,稱“西古城”。明代兵部尚書彭澤撰《西古城記》。清同治二年(1863年),廖登選等續修,清同治五年(1866年)村民人城避戰亂,因城牆堅固,得以保全,遂改名西固城。據《皋蘭縣西固采訪稿》記載:“古城高3丈,頂寬1.3丈,周環3裡,土堞高6尺。”邊長約400米,牆垣殘高3米至6米,基部寬3米至10米,頂部寬1米至10米,夯層厚0.2米。
原西古城頭正南三關殿居中,與正北祖師殿相望,東南角為魁星閣,西南角有火神殿,東城門頂東岳樓矗立。相傳,正月十五晚掛在魁星閣檐下的燈籠,蘭州城西梢門(解放門)一帶居住的人都能看得清楚。古城內有東西走向的上街、中街、下街3條街,中街兩頭與東、西城門相通,十字路口建一鼓樓,東北角為馬祖廟,路南有座戲台。民間有“三街十八巷,團落落有個跑馬巷”的說法,城外四周有約寬、深各5米的護城壕,甕城之外設吊橋,東西甕城門與馬耳山、寺兒溝口相對。城內住戶多屬張、孫、廖、瞿四大姓氏,分居四角,即張姓住西北角,稱“張家圪崂”;孫姓住西南角,稱“孫家圪崂”;廖姓住東南角,稱“廖家圪崂”;瞿姓住東北角,稱“瞿家圪崂”。
清代,西古城一帶築有7個堡(寨):古城西北1.5公裡處為孫家堡、賈家堡、牟家堡;古城以東2.5公裡處有惠安堡;古城東北2.5公裡處為松陽堡和甘泉堡;古城以北黃河之濱有敦仁堡和穎川堡;古城以西1.5公裡處是柳蔭堡(含石崗、白家閣門和桃園堡)。
(三)新城堡 宋徽宗大觀二年(1108年),秦隴地震,震毀蘭州6座城堡,鄭骧在蘭州西80裡築益機灘新堡,以控西夏。後稱老古城。明成化二十年 (1484年),蘭州衛指揮周璜,在蘭州西70裡築箕箕灘堡,以防御西夏進犯。對老古城而言,又稱新城。明保定知府趙英撰《城新城記》。清同治二年(1863年)堡民劉仗宰等補葺。據普查和考證,新城堡遺址在今西固新城鄉城子村內,北距黃河700米,東臨新城溝,西南1公裡為青石台。城址呈正方形,邊約300米,牆垣大部已毀,唯有北城牆殘存東、西兩段,總長50米,殘高2米至3米,基厚1米,頂厚0.2米。1981年列入省級文物保護單位。