Соглашение рассчитано на сезон 2019/20. За «Рубин» Денисов будет выступать под номером «29».
Денисов начал заниматься футболом в «Пахтакоре» (Ташкент), затем в «Академике» (Москва). С 2003 года выступал за ЦСКА. В 2006 году оказался в аренде в нижегородском «Спартаке». Позже играл за «Днепр», «Локомотив», а минувший сезон провел на правах аренды в «Крыльях Советов».
В 2013 году Денисов был признан Федерацией футбола Узбекистана лучшим игроком года.