与此同时,川、陕、楚白莲教大规模的起义也在酝酿中爆发,这次起义历时九年,波及四川、湖北、陕西、河南、甘肃等五省,沉重地打击了清王朝的统治。
川、楚、陕三省边境是一片崇山峻岭,有广阔的森林,这些地区历来是被压迫剥削的广大无业游民的聚集之地,他们依亲傍友,开垦山地,因他们伐木支椽,搭棚栖身,故统称“棚民”。同时,这一地区还聚集着众多农民、无业游民等,他们也深受地主、雇主、当地差役、地痞等人的残酷剥削,往往走投无路,只要有人揭竿而起,必会群起响应。
乾隆朝后期,民间秘密结社白莲教在各地活动更加活跃,虽支派很多,名目不一。但大多信奉“真空家乡,无生老母”八字真言,宣传“弥勒转世,当辅牛八,入教者可免诸厄”。白莲教已从地下转向公开,以宗教活动转向组织群众斗争。
1774年(乾隆三十九年),河南鹿邑县人樊明德创立混天教(白莲教支派),提出“换乾坤、换世界”等具有政治内容的口号。第二年,樊被清政府俘获,惨遭杀害。其弟子刘松、刘之协把混元教改名三阳教,刘松任老教主。后刘松吸收原湖北收元教教首宋之清加入三阳教。宋之清于奉三阳教两年后,与三阳教刘松分裂,另创西天大乘教,拜河南南阳李三瞎子为师、称真弥勤转世,自己改名李卯儿,称为牛祖(即牛八),聚集了齐林、宋显功、樊鸣学等精明强干的弟子,分赴各地、广为传经,西天大乘教遂深入到湖北、四川、河南、陕西等地,成为白莲教一支很大的力量。同时,收元教徒王应琥与其师艾秀也大力发展收元教,并在湖北、四川边界地区发展很快。
这些白莲教派别的迅速发展,使清王朝感到严重威胁,大肆搜捕白莲教各派别骨干和教徒,在白莲教所在诸省发动大规模搜捕,先后将宋之清、齐林、樊学鸣、刘松、刘之协等大批白莲教分支骨干、领袖捕擒,除刘之协等少数人逃出外,上述大部分白莲教骨干先后被杀害或充军边疆。清各地官吏在搜捕白莲教的同时,大肆搜刮民脂民膏,任意勒索,如不从即诬以邪教治罪,造成大批人民的贫困破产,流离失所。
在这种形势下,白莲教以“官逼民反”为号召,首先在湖北荆州地区,以张正谟、聂杰人为首领,于1796年(嘉庆元年)发动起义,各地白莲教组织闻风而起。三月间,杨起元、熊道成等起兵攻占当阳县;四月,襄阳地区白莲教以王聪儿、姚之富等为首,聚众数万余人起义,一时汉水两岸,义军声势浩大。其中尤以襄阳黄龙垱一支最为强大。首领王聪儿是西天大乘教首领齐林的妻子。齐林被捕时,她藏于郊外青莲庵中,幸免于难。起义时被群众推为总教师;另一首领姚之富长期奔走于鄂西北山区,宣传和组织群众,在教徒中威信甚高。此外,还有逃出的原三阳教首领刘之协(刘松弟子)也在其中。他们在襄阳聚众数万人,围攻樊城。
湖北各地白莲教纷纷起义,清政府忙派湖广总督毕沅、湖北巡抚惠龄、西安将军恒瑞等,相继出动,赴各地镇压。最初,毕沅和惠龄均无功效。于是清廷又加派直隶提督庆成、山西总兵德龄助援。
六月,白莲教控制了归州、巴东、安陆、京山、随州、威丰等地,同孝感白莲教相呼应。义军锋芒距军事重镇汉阳仅百余里,但因时值梅雨季节,义军受阻。清政府忙又调两万镇压苗民起义的清兵,增援湖北。
同时,清政府还发动当地地主富绅组织团练乡勇,参加镇压白莲教的行动。这些地主武装协同清军作战,搜捕教民、防守村镇关卡,很大程度上阻止了义军进一步发展,给白莲教起义军造成很大威胁,严重地牵制着起义军。而在白莲教内部,也在起义之后迅速暴露出农民小生产分散保守等弱点,虽表面上如雨后春笋,但派支繁多,互不统属,独立行动,各自为战。这恰恰给清军各个击破造成了良好条件。同年三月,义军首领、枝江地区聂杰人被诱降杀害。八月,陕甘总督宜绵、提督庆成破竹山、保康,义军首领曾士兴被杀。同时,义军首领杨士敖、杨起元、熊道成、陈德本等先后被杀;九月,湖北巡抚惠龄攻陷枝江,首领张正谟被杀。到十一月止,湖北大部分白莲教起义被镇压下去。剩余的义军也逐渐呈势单力孤之态,惟有襄阳的起义军,在一开始就于汉水以东的广大地区活动,并未据守一城一地。十月问,胜利突破清军合围,并于陈家河一带设下埋伏,大败清追击之军后,北走鄂豫陕边境。义军在战斗中摸索出与清军不作正面冲突,采取流动作战的战术。事实证明,这种“敌来我走,敌疲则打”的流动战术是以弱胜强的正确战术。所以襄阳起义军能够在各地义军相继失败时独存,而且在政治上和组织上有所进步。他们提出很多适合于农民的政治口号,并申明十条纪律,使这股义军逐渐走向成熟。清政府多次集中优势兵力却不能捕捉和扑灭起义军主力。
1797年(嘉庆二年)二月,起义军分三路进入河南。一路由王廷诏等率军围清兵于裕州,折西入陕西;一路李全等活动于信阳、应山,转奔浙川、卢氏;一路由王聪儿、姚之富等袭南阳、攻嵩县,折回湖北郧西。义军队伍十分灵活,攻能聚,走则散,忽南忽北,使清军疲于应付,而且义军所到之处,群众纷纷响应、参加,队伍不断壮大。
同年春,起义军移至秦岭山区活动。五月,王聪儿、姚之富与王廷诏、李全等会师于镇安,在表带伏击清军,接着又重创清军于王家坪。六月,起义军强渡汉水。时任清军统帅的惠龄告急,并领军尾追,但义军已渡过汉水,为进军四川铺平了道路。嘉庆气急无奈,降惠龄衔、世职、花翎,易宜绵为统帅。
渡过汉水的起义军于七月分兵三路进入四川,穿越大巴山区,与四川白莲教共同击败包围四川白莲教的清军,胜利会师。
在湖北白莲教起义不久,四川达州白莲教首领徐天德首先在亭子铺举起义旗。接着,东乡王三槐、太平黄富才等相继响应,义军据占川东大部州县。四川总督英善、成都将军勒礼善虽率兵进剿,但慑于起义军的声势,畏缩不前。清军小股部队皆被义军所败。同时,陕西各地白莲教也闻风而动,一些地方的白莲教首领也纷纷举起义旗。
年底,清军进逼徐天德后方营垒东乡,义军乘其扎营未定,发动猛攻,激战三昼夜,恰值西安总兵何元卿率兵增援,重庆总兵袁国璜才脱离险境。两路清军遂于老营湾四周布巨木栅栏,挖长壕,每日黄昏黎明,例出百人放枪三遍,喊号三声,以图自保。起义军于大雾黎明发动突然袭击,掷火球于清军营内,用长钩钩倒巨木橱栏填平长壕,冲入清营。结果袁国璜、何元卿皆被击毙,起义军大获全胜。
第二年(嘉庆元年),巴州白莲教首领罗其清及苟文明等起义于方家坪;通州首领冉文俦及冉天元等起义于王家寨;太平首领龙绍周及徐万富等起义于南津关;此外,还有云阳林定相,奉节龚文玉等纷纷起兵响应。一月底,徐天德、王三槐等攻克东乡城,击毙哈密办事大臣佛住。至此,四川白莲教起义也如火如荼地发展起来。
但起义军虽获得了最初的胜利,却重蹈了湖北起义军的覆辙,他们也株守山寨,没有主动出击,逐渐陷于被动。清军得以喘息,清大队人马陆续调至四川,悍将明亮、德楞泰在攻灭苗民起义后移师四川,气势很盛。同时,地主武装也呈抬头之势,其中以南充知县刘清组织的乡勇闻名。刘清为官清廉,民间素有“刘青天”之誉,而且刘清又只身进入起义军营寨中,招抚劝降,至使一部分义军放下武器。其他一些民练乡勇,由于熟悉地形,与官军协同作战成为起义军的劲敌。
1897年(嘉庆二年)春,四川起义军的重要领导人孙士凤牺牲,各地白莲教义军均遭清军围剿。七月,徐天德、王三槐等与清军苦战,屡遭失败,就在情况万分危机的时候,恰逢襄阳白莲教数万人三路入川,解被困之围,局势出现了转机。
两路义军于东乡汇合后,王聪儿、姚之富等驻开县南天洞,李全与徐天德等驻温汤井。各路义军决定重新按青、黄、蓝、白分号,并设掌柜、元帅、先锋、总兵等职,确立各路义军建制。