Club manager Tony Adams, who recently saw the departures of Lassana Diarra and Jermain Defoe, said: "It's great news that Glen's decided to sign a new contract.
"I'm delighted to have him here - I want him here for a long time. This is a good place for him. He's got back in the England squad since he came here.
"Glen's applied himself really well. He's always desperate to play and gets frustrated when he can't.
"He's been very good for this club and this club's been very good for him."
Johnson has got his career back on track at Portsmouth after an unhappy spell at Chelsea. The right-back was tipped for stardom after coming through the youth ranks at West Ham but he failed to establish himself at Stamford Bridge following a £6 million transfer in 2003.
He initially joined Portsmouth on a season-long loan in 2006 and the move was made permanent for £4 million the following year.
He has made 83 first-team appearances for the club and has been a regular in Fabio Capello's England squads.
Meanwhile, club chairman Peter Storrie has insisted that no more players will be leaving Portsmouth this month. "Let's make it clear, there will be no more players sold," he said. "We are concentrating on bringing others in."
In terms of bringing players in, Tony Adams is said to have his eye on Lens' Ivory Coast international Aruna Dindane together with Valencia midfielder Edu and Newcastle's Joey Barton.
Barton, who has been out of action for almost two months with a knee problem, would be brought in to replace Pape Bouba Diop, who has been ruled out for three months.
The 26-year-old very nearly made a move to Portsmouth last summer, when Newcastle tried to sell him at the last minute, but with Joe Kinnear's side sitting just four points above the relegation zone a deal is unlikely to go through this month.