A 4.3 magnitude earthquake struck near Christchurch just before 9pm today.

The quake was 20km southwest of the city at a depth of 7km, and would have been felt in mid-Canterbury, GNS Science said.

Christchurch has been shaken by aftershocks since a 7.1 magnitude tremor last September, the worst a deadly 6.3 magnitude quake on February 22.