Manager Neil Lennon knows Heskey from their time together at Leicester City.
Heskey has been a free agent ever since leaving Australian A-League side Newcastle Jets.
The forward had been action for the club's under-21's on Sunday, and joins Eidur Gudjohnsen as the latest forward with a wealth of Premier League experience to sign for the club this season.
Heskey was part of the Leicester City side that won the League Cup under Martin O'Neill before he was signed by Gerard Houllier at Liverpool - where he won a cup treble in 2001, and the League Cup again in 2003.
In 2004 he left Liverpool for Birmingham City before moving to Wigan Athletic in 2006 for a three year spell, prior to a reunion with O'Neill at Aston Villa, where he also ended up working under former Liverpool boss Houllier for a short spell, before leaving Villa Park for Australia in 2012.
The 36-year-old has scored a total off 111 goals from 516 appearances in the Premier League alone.