Rangers are pushing ahead with their youth policy by securing a deal for Zak Lovelace.
The 16-year-old made his debut for Millwall last season, playing four times for the first team.
However, his age means that he was free to move on under freedom of contract rules.
"He is an exciting young player and one we are sure will progress here.
"He has developed really well with the staff at Millwall and we can see lots of potential in him."
Millwall stated they were "disappointed and saddened" by the transfer, "having worked tirelessly over many months to convince Lovelace, his family, and his representatives that Millwall remained the ideal destination for the striker to continue his personal and professional development."
Their statement added: "Despite these frustrations, everyone at Millwall wishes Lovelace the best of luck in his future career and hopes that he goes on to realise his outstanding potential."