Oxyclean mixed with water seems to work well for me.
A lot of people also use Woolite cut with water however there has been some debate about this and it's long term effects on the surfaces cleaned with it.
For carpets I start by a thorough vacuum. Followed by a pre-treat with Folex. Then I mix up a 1 gallon mixture of oxyclean+hot water and scrub the carpets with it. Extract with my 5hp rigid vac and I am good to go.