山東有個書生叫安鳳巢,才華橫溢,英俊瀟灑。有一次,他在家中讀書,看見有一隻手掌大小的七彩蝴蝶從窗戶外飛進來落在花瓶上。安生很喜歡那蝴蝶,就用手試著去觸控它。沒想到蝴蝶竟如通曉人性一般,飛到安生的手上。安生詩興大發,隨手在紙上寫了首小詩綁在蝴蝶腿上放飛了蝴蝶。第二天,那蝴蝶又回來了,而且紙片還在。安生取下紙片發現上面的詩已經不是自己寫的那首了,看那清秀的字跡肯定是女子寫的,而且還有落款“紅蕊依舊”四個字。安生放走蝴蝶,心中幻想:“紅蕊肯定是一位多才多藝的女子,若是將來有機會相見定要娶她為妻”。安生對那首詩喜不勝收,日夜吟誦。
一個月後,安生突然生了一場大病,父母心急如焚請來先生給他治病。先生名叫宋申,是位名醫。宋先生詳細詢問了安生的狀況後,驚訝地問道:“你就是鳳巢先生嗎?你寫過一首詩綁在蝴蝶腿上了?”安生點頭。宋先生說:“真是冤孽啊,你可知這無心之舉竟害了一位佳人啊。”安生不解問其緣由。宋先生說:“我有個外甥女,名叫紅蕊,年方十八,喜好詩詞。一天看到你綁在蝴蝶腿上的詩,十分喜歡,四處打聽鳳巢仙人,以致害了相思病。現在已經面容憔悴,臥床不起了。安生聽後十分羞愧,便要先生帶他去見紅蕊一面,宋先生欣然答應。
到了紅蕊家,見到院裡種滿了鮮花。不一會兒,一個老婦人出來迎接。宋先生告訴安生:“這是紅蕊的母親,名叫毓秀。他只有紅蕊一個獨女,把紅蕊當做掌上明珠”毓秀見了安生,十分喜歡,便帶他去見紅蕊。來到紅蕊閨房,見到一位美女斜躺在床上,雖然頭髮凌亂,卻楚楚動人,豔麗無雙。紅蕊見了安生似乎一下子病就好了,二人擁在一起互相傾訴愛慕之情。從那以後,紅蕊的病情漸漸好轉,不出半月已經完全康復。安生想娶紅蕊為妻,於是就在扇面上寫了一首詩表達自己願於紅蕊白頭到老的意願。紅蕊看後,十分高興,立即在扇面上畫了一朵海棠花,並配上詩文回贈安生。安生領會了紅蕊的意思,欣喜若狂,常去她家中找她。並且見母女倆生活艱苦,經常施捨。毓秀卻一臉不快,說道:“我們雖然窮,但有志向。”這裡可不是妓館,你只可與紅蕊做詩友,做情人就別想了。”
大約過了半年,安生與紅蕊的感情日益深厚,到了談婚論嫁的地步。於是就請宋先生做媒人。毓秀起初滿口答應,但是到結婚前幾天卻突然變卦。她怕紅蕊婚後離自己而去,竟然獅子大開口向安生要五百兩養老費,以圖後半生衣食無憂。安生家中並不富裕,去哪弄這五百里銀子呢。只得去問親戚朋友借錢,他親戚朋友都嫉妒他要娶一個大美女,不願借給他。說來也是不幸,這時正當各地盜匪橫行,官府腐敗無能只能紛紛外逃。安生迫不得已只能背井離鄉,經過紅蕊家門時見她家大門緊閉,一問才知道紅蕊母親早已帶她逃走了。安生悲痛欲絕,放聲大哭起來。這時鄰居看見了拿出一幅畫給安生,對他說:“這是紅蕊畫像,見畫如見人,你們真是郎才女貌,希望你們可以重逢”安生四處輾轉,後來逃到了河北,被迫參軍,因為他精明能幹,很受將軍賞識,很快就升任了副將。
一天,安生來到保定時,在一見妓院門前看到一女子很面熟。安生上前搭話,一問才知道她竟是紅蕊家中的丫鬟,丫鬟告訴安生:“老夫人以前是鴇母,紅蕊是她賣來的,並非親生,只是把她當做搖錢樹。我們一起逃到這裡,老夫人就把我賣給了妓院,我聽說她們後來去了大同,紅蕊也被賣給一位總兵做妾了。”安生回去後,心如死灰,可悲自己與紅蕊有緣無分啊,不禁嚎啕大哭起來,就在這時,突然有隻蝴蝶翩翩而來落在安生書桌前。只見蝴蝶用嘴沾上墨汁,在紙上寫起字來。蝴蝶寫到:“我是紅蕊,請不要傷害我,拿我畫像來,我有話對你說。”安生看後喜不自勝,急忙拿出畫像,對著畫像問道:“你現在身在何處?我要去找你。”紅蕊哭著說:“我已經死了,總兵的妻子嫉妒我,經常虐待我,我忍受不了,乾脆一死了之。現在我的魂魄化作蝴蝶前來告訴你,下輩子再做你妻子吧。”
安生聽後泣不成聲,在看蝴蝶已經消失不見了,於是就來到大同找到紅蕊的墳墓,把她重新安葬在自家後面的空地上,並寫了一首詩紀念紅蕊。五年後,安生升任太守,一天晚上,安生夢到院裡飛來數百隻蝴蝶,不一會紅蕊從天上翩翩而至。紅蕊說:“承蒙上天眷顧,我已被封為閬苑花神,位列仙班。七月七日那天你陽壽耗盡,到時我來接你,從此永不分離。”安生跟家人安排完後事,一月後的七月七就與世長辭了。