Engagement Archive · Battle of Zhenhai (1885)
Five ships of the Nanyang Fleet set out to aid Fujian; two were first lost halfway and sank in Shipu Bay, while the remaining three hid inside the mouth of Zhenhai -- and with batteries, mines, and an old garrison officer who personally served a gun, the defenders kept the French Far East Squadron outside until the ceasefire, making this the only harbor the Chinese side held in the Sino-French War.
Engagement Data

| Item | Details |
|---|---|
| Time | 1885.2.13 – 1885.4, main fighting in early March (Shipu prelude 2.13–15) |
| Place | The mouth of Zhenhai in Zhejiang (the Yong River estuary, with batteries on both banks at Zhaobao Mountain and Jinji Mountain) and Shipu harbor in Xiangshan |
| Belongs To | Sino-French War · southeastern coast theater (for the larger situation, see *Sino-French War · Overview*) |
| Defenders | Zhejiang defenders: Admiral Ouyang Lijian (directing the defense at Jinji Mountain), brevet admiral Yang Qizhen (north bank), garrison officer Wu Jie (the batteries), and Xue Fucheng, intendant of the Ningbo-Shaoxing-Taizhou Circuit (Ningbo defense military affairs office); the three Nanyang Fleet ships Kaiji, Nanchen, and Nanrui (under Wu Ankang) anchored inside the harbor mouth |
| Attackers | French Far East Squadron, commanded by Vice Admiral Amédée Courbet, with the ships Baya, Niuhuili, Danake, Baxia'er, Deliyongfang, and others committed in succession (ship-name transliterations unverified) |
| Result | The French attack was repulsed and failed to break into the mouth of Zhenhai; the engagement turned into a standoff of naval blockade and mine-sealed harbor until the ceasefire in April |
Belligerents
| Item | Defenders | Attackers |
|---|---|---|
| Strength | Six battalions along the Jinji Mountain-Yuwang Ridge line (under Ouyang Lijian), five battalions on the north bank (under Yang Qizhen), plus batteries and naval forces, roughly around ten thousand in all (figure disputed) | About four ships during the attack on Zhenhai; more ships of the full squadron cruised in the Taiwan Strait (order of battle unverified) |
| Ships | The three Nanyang Fleet cruisers Kaiji, Nanchen, and Nanrui took shelter inside the harbor mouth; both firepower and tonnage were inferior to the French ships | Ironclads, cruisers, and other warships, with naval-gun caliber and range superior; shipborne spar-torpedo boats could make night attacks |
| Fortifications | Old and new batteries at Zhaobao Mountain, Jinji Mountain, and elsewhere, equipped with modern breech-loading steel guns (Krupp and others; the number and caliber of the guns vary by account) | -- |
| Blockade | Sunken ships and timber piles blocked the entrance, and mines were laid (electrically fired mines, number unverified) | The squadron formed line outside the harbor mouth and maintained a long blockade |
Terrain and Conditions

(For the larger situation in 1884–85 -- Majiang destroyed, Taiwan blockaded, and the Qing court caught between war and peace -- see *Sino-French War · Overview*.)
Zhejiang: the doorstep after Mawei. In 1884.8, the Fujian Fleet was annihilated at Mawei, and every governor-general and governor along the southeast coast felt endangered. Beginning in the spring of 1884, Zhejiang governor Liu Bingzhang and Admiral Ouyang Lijian had already gone to Zhenhai to plan the defense: building batteries, buying guns, laying mines, and drilling local forces. This battle was not a hurried response to an enemy arrival; it was a prepared wait for the enemy to come to the door.
This place: Zhenhai controlled the Yong River estuary, the gateway to Ningbo. Zhaobao Mountain on the north bank and Jinji Mountain on the south faced each other like a gate; the channel was narrow, and shore batteries could be used to best effect. Forty years earlier, in the First Opium War, the British army had broken in from here, and the governor-general of Liangjiang, Yuqian, had drowned himself after the city fell (see *Battle of Zhenhai (1841)*). Under the same Zhaobao Mountain, the battery foundations still pressed down on the humiliation of the previous battle.
Why It Was Fought
The fighting in the previous article, *Zhennan Pass and Lạng Sơn*, took place in the mountains along the Guangxi-Vietnam border and would not be decided until late March. In the same period another line unfolded at sea along the southeast coast, where firing began earlier: by mid-February, shells were already falling in the harbors of Zhejiang. This line has to be traced back to Taiwan. After French forces occupied Keelung and were checked at Huwei, Courbet announced a blockade of the Taiwan Strait, cutting off seaborne aid from the mainland to Taiwan. Taiwan became an isolated island, and the Qing court repeatedly pressed the Beiyang and Nanyang fleets to send ships south. The fleets of Beiyang and Nanyang were each the household reserves of their own provinces, and no one wished to part with them. Only on 1885.1.18, after repeated urging, did the five Nanyang Fleet ships Kaiji, Nanchen, Nanrui, Yuyuan, and Chengqing weigh anchor from Wusong to aid Fujian (one account says to aid Taiwan; descriptions of the destination vary by article, unverified), under the command of Yangtze Fleet admiral Wu Ankang (rank title unverified).
The imperial edicts pressing for ships had not stopped since the month the guns sounded at Mawei. Beiyang and Nanyang each had its reasons not to send ships: two Beiyang ships had only just been dispatched when the Gapsin Coup suddenly broke out in Korea, and Li Hongzhang memorialized to recall them (details of the reason for recall unverified); Nanyang was the governors' own reserve, and only after several months was it made to assemble these five ships. The court did not possess a unified navy. It had only the question of whether the provinces would let go. The decision came very slowly, so slowly that by the time the five ships went to sea, the blockade of Taiwan had already taken shape.
After Courbet learned of this, he personally led seven ships north to intercept them. On the morning of 2.13, the two sides encountered each other in the waters off Tantou Mountain in eastern Zhejiang. The Nanyang ships did not dare engage: the faster Kaiji and two other ships used fog to enter the mouth of Zhenhai, while the slowest ships, Yuyuan and Chengqing, took shelter in Shipu harbor. Within two days, the two ships at Shipu had sunk in their own harbor (whether they were scuttled or sank because of an attack, two accounts coexist, unverified), and the Nanyang Fleet had lost two-fifths of its force before fighting. The French objective was to pursue and destroy these five warships. Wherever the remaining three hid, the battlefield followed them, and Zhenhai thereby changed from a refuge for warships into a battlefield.
Courbet's calculation was not hard to understand. The precedent at Shipu stood there: once warships fled into a harbor, they became fish in a jar, and shore batteries had never withstood the naval guns of the Far East Squadron -- so it had been at Mawei, and so at Keelung. But Zhenhai was not Shipu. Shipu harbor was open and had no battery cover; once a ship took shelter there, it was trapped. Zhenhai held the mouth of the Yong River, where Zhaobao Mountain and Jinji Mountain stood like a gate on the two banks, the channel was only about one li wide at its narrowest, sunken ships and timber piles blocked navigation inside the mouth, electrically fired mines were thickly laid (number unverified), and the batteries on both banks mounted modern breech-loading steel guns. Still more important was time: after the guns sounded at Mawei, Zhejiang governor Liu Bingzhang and Admiral Ouyang Lijian had spent a full year at Zhenhai building batteries, buying guns, laying mines, and drilling local forces. This battle was not a hurried response to an enemy arrival; it was a prepared wait for the enemy to come to the door. Forty years earlier the British army had broken in from here, and the governor-general of Liangjiang, Yuqian, had drowned himself after the city fell. Under the same Zhaobao Mountain, the battery foundations still pressed down on the humiliation of the previous battle.
On the defending side at Zhenhai, the material account was calculated line by line: provincial treasury silver allocated to buy guns, foreign specialists hired to lay mines, sunken ships placed to block the channel, and more than a year of Ningbo Prefecture's defense funds spent continuously at Zhenhai (amounts and details unverified). Courbet's side also had boundaries: the squadron was far from home, coal and ammunition depended on ports such as Nagasaki (details unverified), and the blockade of Taiwan had tied down more than half the ships. What he could bring outside the mouth of Zhenhai was always only four or five ships.
Inside the harbor mouth, there had been disagreement among the defenders over whether the three ships should stay or go: some argued that the three ships should be ordered to sail out, lest they pin the French squadron to the mouth of Zhenhai; those in charge decided to keep the ships inside the mouth, where they and the batteries on the two banks could support one another (this discussion appears in Chinese defender records, source unverified). On the French side, after two forced attacks failed, Courbet shifted to blockade; existing records do not show whether anyone under him advocated another attack.
On 2.28, Courbet led four ships to Qili Islet outside the harbor mouth. On 3.1, French ships approached in the direction of Zhaobao Mountain and exchanged fire with the batteries on both banks and the three ships inside the mouth. From that day, the gate at Zhenhai began to hold.
Could the fighting have been avoided? For Courbet, pursuit was an option rather than an order: leaving three cruisers that dared not come out to squat inside the harbor mouth did not obstruct the larger blockade. But Shipu had been won too easily, and in his eyes a harbor mouth had always been something that could be shelled open. He tried twice. He did not shell it open.
Course of the Engagement

| Stage | Time | Key Points |
|---|---|---|
| Encounter off Tantou Mountain | 2.13 | Courbet pursued and intercepted with seven ships; three Nanyang ships entered the mouth of Zhenhai, while Yuyuan and Chengqing took shelter at Shipu |
| Shipu prelude | 2.14–15 | Two French spar-torpedo boats entered Shipu harbor by night to attack Yuyuan; the spar torpedoes missed, and the two boats were instead damaged and grounded (French records). By the morning of the 15th, Yuyuan and Chengqing had sunk in the harbor and their officers and men had evacuated -- whether the cause was scuttling or an attack, two accounts coexist (accounts vary) |
| Final defensive preparations | 2.28 | Courbet led four ships to Qili Islet outside the harbor mouth; Ouyang Lijian personally stationed himself at Jinji Mountain to direct the defense, sunken ships and mines were placed inside the mouth, and all batteries entered battle readiness |
| First attack | 3.1 | French ships approached in the direction of Zhaobao Mountain and exchanged fire for about two hours with the batteries and the three ships inside the mouth; they were repulsed. Chinese records say enemy ships were damaged (accounts of the result vary by account) |
| Second attack | 3.3 | French ships attacked again. Garrison officer Wu Jie personally served a gun at Zhaobao Mountain, hitting an enemy ship's funnel and mast in succession, and the French ships withdrew (Chinese records; which ship was hit and the degree of damage are unverified) |
| Standoff and night attack | Mid- to late March | French forces shifted to blockade. In late March, the defenders used several breech-loading guns to make a night attack on anchored ships, and Chinese records say five shots hit; after that French ships no longer came close (figure disputed). In mid-April the defenders also thwarted two French sneak attacks (dates vary by account) |
| Blockade until ceasefire | April | The two sides faced each other with mines and blockade, and no major battle followed. In early April the Sino-French ceasefire agreement was reached; in June the Treaty of Tientsin ending the Sino-French War was signed, and the fighting ended |
Casualties and Losses

- Defenders: casualties were light (Qing reports, specific number unverified); at Shipu, Yuyuan and Chengqing were lost -- the Nanyang Fleet had lost two-fifths of its force before fighting.
- Attackers: Chinese battle reports said several French ships were damaged and several dozen French troops killed or wounded; French records describe only light ship damage and casualties of a few men. The two sets of figures diverge sharply, and both await article-by-article checking.
- Whichever set of figures is used: the mouth of Zhenhai was not lost. This was the only time in the whole war that the French squadron's frontal attack on a harbor mouth was driven back by coastal defense.
Aftermath
- Courbet immediately shifted forces, and at the end of March took Magong in Penghu as a base for blockading Taiwan (see *Fighting in Taiwan and Penghu*).
- Zhenhai held, but at the negotiating table the Sino-French War ended with the 1885.6.9 Treaty of Tientsin, and the Qing abandoned suzerainty over Vietnam -- the battlefield was not lost, but the tributary state was gone.
- Wu Jie is said to have been promoted and rewarded for merit (Chinese records, details unverified); the battery remains at Zhaobao Mountain and Jinji Mountain survive today as part of the Zhenhai coastal-defense heritage site.
- The wrecks of Yuyuan and Chengqing have in recent years been investigated by underwater archaeology (progress unverified).
Accounts of Those Present

- "Old Wu": Garrison officer Wu Jie, known among local people as "Old Wu," was an old gunner from the ranks (biography unverified). In the 3.3 artillery duel he did not use a gunner, but aimed and served the gun himself, one shot hitting a funnel and another hitting a mast -- in the Chinese narrative, the loudest shot of the whole battle.
- The two ships sunk at Shipu: The officers and men of Yuyuan and Chengqing abandoned ship and went ashore before dawn on the first day of the lunar new year, and the ships sank in their own harbor. The French themselves acknowledged that the sneak attack had not hit and had instead damaged two boats; Chinese accounts mostly record that the ships were scuttled to keep them from aiding the enemy. How the two main ships were lost remains an unresolved case.
- The intendant working under fire: Xue Fucheng, intendant of the Ningbo-Shaoxing-Taizhou Circuit, led the Ningbo defense military affairs office and after the battle left writings on the defense of Zhenhai (*Record of Planning the Defense of Eastern Zhejiang*, article titles unverified) -- a rare first-hand defender record for this engagement.
- Courbet's death: Traditional Chinese narratives say he was hit and wounded at the mouth of Zhenhai, that the wound became fatal, and that on 1885.6.11 he died in Penghu (this account is used by *Cihai* and many modern-history reference works). French military archives and the participating officer Garnot's *The French Campaign in Taiwan* (Li Liewen translation) record instead that he died of illness in Penghu. The two accounts coexist, each with the nature of its source marked; see "Disputes and Sensitivities."
The Ground

- The two banks of the Yong River mouth faced each other: Zhaobao Mountain on the north bank, Jinji Mountain on the south, with the channel only about one li wide at its narrowest. Once ships entered the trap, they were under the crossing fire of batteries on both banks -- a natural asymmetry: naval guns fired farther, while shore guns fired more accurately and could not be sunk.
- Three layers of defense: sunken ships and timber-pile obstacles outside the mouth, mines in the channel, and the batteries on both banks together with the firepower of the three ships inside the mouth, layered one on another. If French ships dared enter, they would have to take obstacles, mines, and guns at the same time.
- Shipu was the counterexample: the harbor was open and had no battery cover, so once the two ships took shelter there they were trapped. Both were forms of hiding, but Zhenhai was a fortress and Shipu was a trap.
- Night-fighting elements: spar-torpedo boats attacking by night at Shipu, and the defenders' artillery night attack on anchored ships outside the mouth of Zhenhai. Half of this battle was fought at night.
How Each Side Records It
- Chinese side: It has long been called the "Zhenhai Victory" and the "Defense of Zhenhai," and is treated as the only victorious coastal-defense battle of the Sino-French War. Wu Jie personally serving the gun is the narrative core; Zhenhai local gazetteers and contemporary commemorative narratives all treat it as local honor.
- French side: Official and private records mostly present the action at the mouth of Zhenhai as a reconnaissance contact or as a blockade after a frustrated bombardment, with far less attention than the fighting in Taiwan and Penghu (specific phrasing in French battle histories unverified) -- an engagement richly narrated by one side and passed over in a line by the other.
- Forty-year comparison: Chinese narratives often place the defense of Zhenhai in 1885 beside the defeat at Zhenhai in 1841. Under the same Zhaobao Mountain, the frame of washing away the earlier humiliation is very strong. The comparison itself is worth writing, but within the "avenging humiliation" frame the results on both sides have been enlarged.
Disputes and Sensitivities
- Courbet's cause of death: Two accounts coexist: death from wounds (traditional Chinese account, accepted by mainstream reference works) and death from illness (French archives and accounts by participating officers). Neither amounts to iron proof.
- The sinking at Shipu: Were Yuyuan and Chengqing scuttled to avoid capture, or did they sink after being damaged in a spar-torpedo boat attack? French eyewitness accounts and Chinese accounts conflict, and the cause of the two ships' sinking remains unsettled.
- Figures for the results: The gap is very wide between the Chinese account of "several ships damaged and several dozen killed or wounded" and the French account of "light damage." The record that Wu Jie's two shots hit comes from Chinese sources, and no corresponding entry has yet been seen in French logs (record unverified).
- The dispute over "the only victory": Zhenhai was held, but the loss of Yuyuan and Chengqing and the later fall of Penghu are often passed over in the "great victory" narrative.
Sources and Open Questions
Known main materials:
- Xue Fucheng, *Record of Planning the Defense of Eastern Zhejiang* (first-hand record from the defenders' military affairs office; article titles and juan numbers unverified)
- Zhenhai local gazetteers (the "Chronology of Major Events in the Sino-French War Battle at the Mouth of Zhenhai" in *Zhenhai County Gazetteer*)
- Garnot, *The French Campaign in Taiwan* (account by a participating French officer, Li Liewen translation)
- French Ministry of the Navy archives (basis for Courbet's cause of death and French battle logs, cited secondhand and awaiting rechecking)
Open questions: the cause of the sinking of Yuyuan and Chengqing (original sources for the scuttling and attack-sinking accounts); details from both sides on the Shipu night attack (results of the spar-torpedo boats and the basis for the records of the two boats grounding); the destination of the five Nanyang ships sailing south and Wu Ankang's rank title; total strength of the Zhenhai defenders; the number and caliber of gun positions at each battery, and the number of mines; French records of the two artillery duels on 3.1 and 3.3 and itemized ship damage; Wu Jie's biography and the source of the name "Old Wu"; exact dates of the late-March night attack and the two mid-April sneak attacks; article-by-article casualty statistics for both sides; archive-level sources for the two accounts of Courbet's cause of death; the original ship names corresponding to the French ship-name transliterations Niuhuili, Danake, Baxia'er, and Deliyongfang; the reason the two Beiyang ships were recalled and the related memorials and imperial edicts; the original record of the debate over whether the three ships should stay inside the harbor mouth (check *Record of Planning the Defense of Eastern Zhejiang*); Zhejiang coastal-defense funding and the numbers for purchased guns and laid mines; the coal and ammunition supply sources of the French Far East Squadron; whether there are records of disagreement under Courbet over another attack on Zhenhai.
All images on this site are AI-generated depictions. They are not historical photographs, not primary sources, and do not depict any real individual.