It's not a pleasant experience especially when you turn the air-con blower up on a hot sunny day, and realise theres an odour.
This is due to bacteria growing inside the ventilation system, or bacteria that died due to unfavourable conditions.
Moisture in the system, coupled with our warm weather, provides the two basic necessities needed for bacteria to thrive. Sometimes, the conditions inside the ventilation system change due to a variety of factors, making the environment no longer suitable for the bacteria's survival and it dies. When this happens the stink given off is the same as when food rots.
It's almost impossible to try and prevent bacteria from living inside the aircon filter. Turning the heater up isn't going to 'burn' away the smell, neither is turning the air flow to FRESH AIR.
A moderately effective method is to spray deodorant or disinfectant 'into' the vents. Another solution that might be more effective, is using mustard powder and water (vinegar mixed with water can also be used) and spraying it into the vents. After spraying, run the blower heater at maximum heat for 4 - 5 minutes (Open all the doors while you do this). After which, there might be a strong vinegar smell (If you used vinegar), spray the inside of the vents with air freshener or even a little bit of water, and let the blower run on full power for a few minutes, just to dry it up. Be sure to repeat these steps if your car has rear cabin vents.
There's actually not much you can do to prevent it from coming back. But one thing you can do is to check and make sure the drainage opening for the AC unit is not blocked, If it is, moisture will accumulate and give the bacteria a reason to live. You should see a fair amount of water dripping out from under your car right after parking.
If the smell you're getting isn't like bad breath or rotting food and doesn't seem to be coming from the vents, it could be a leak from your exhaust system, causing exhaust fumes to get into the cabin. Exhaust gases contain carbon monoxide, which you really don't want entering your cabin.
If you don't already know, Carbon monoxide is colourless, odourless and initially, non-irritating. Inhalation of the gas can cause "light-headedness" and headaches, and on rare cases, can be fatal.
'Oily smells' however, suggests something might be wrong in the engine bay while excessive braking. Very poor use of the clutch with a manual transmission will also give off smells.
So, make sure you get your vehicle inspected and serviced regularly and if you aren't confident with dealing with the odour from your vents yourself, get your trusted mechanic to do the job for you. And most of all, keep you car cabin clean.