The 55-year-old former Roma boss departs on the back of a disappointing goalless draw at home to lowly Tomsk on Saturday, which allowed Lokomotiv Moscow to move two points clear at the top of the table.
They also suffered a 4-2 defeat in the home leg of their European tie against Dortmund, giving themselves an uphill task for next Wednesday's return encounter in Germany.
Former Russia captain Sergey Semak has been placed in temporary charge.
A statement on www.fc-zenit.ru read: "Zenit's club management has decided to dismiss Luciano Spalletti from his duties as head coach of the Blue-White-Sky Blues.
"Sergey Semak has been appointed Zenit's acting head coach."
Spalletti took up the Zenit reins in December 2009 and led the side to two league titles, one Russian Cup and a Russian Super Cup crown.
He was also the first man ever to lead the club into the knockout phase of the Champions League, and was named coach of the year in Russia in 2010 and 2012.
The statement added: "We wish to thank Luciano Spalletti for all that he's done for the development of St Petersburg football, and we will always be happy to see him in St Petersburg! Grazie, Mister!"