Rick Santorum has won the Alabama Republican presidential primary, Fox News projects, and is holding onto a narrow lead in Mississippi where the race is still too close to call.

The victory in Alabama is a major boost for Santorum, a state in which he was vastly outspent by Mitt Romney.

Romney is now in a battle with Newt Gingrich for second in the GOP contest. With 55 percent reporting, Santorum was ahead with 35 percent — followed by Gingrich with 30 percent and Romney with 28 percent.