The measure was approved on a vote of 246-182, following an extraordinary four-day debate. Seventeen Republicans crossed party lines to support the resolution, while two Democrats opposed it.
"The passage of this legislation will signal a change in direction that will end the fighting and bring our troops home," House Speaker Nancy Pelosi said, endorsing the measure that takes issue with Mr. Bush's decision to send an additional 21,500 U.S. troops into battle.
The president's Republican allies battled to the end against the measure, saying resolve is more important than resolutions and warning against the follow-up measures that some Democrats advocate to force a change in policy.
"Their so-called slow-bleed approach is the bite that will surely hurt those fighting under America's flag overseas," said Rep. Roy Blunt of Missouri, the second-ranking Republican, as debate neared an end.
"This nonbinding resolution is the first step in an all-too-binding spiral toward defeat in a fight that we cannot afford to lose," he said.
As the 45 hours of debate drew to a close, Republicans chose as their final speaker Republican Sam Johnson — a former Vietnam POW — as a living reminder of their central theme: support the troops. Democrats insist they do; in fact, that's the first sentence of the resolution, CBS News correspondent Sharyl Attkisson reports.
You might have expected high-voltage rhetoric or fist-pounding condemnations from the White House in response to the resolution. Instead, Spokesman Tony Snow was devoid of outrage, CBS News White House correspondent Mark Knoller reports. In a written statement, he merely pointed out that the resolution is "non-binding" and the president stands by his Iraq strategy.
And White House sources tell CBS News chief White House correspondent Jim Axelrod that the president doesn't care about an ideological rebuke — he just wants to protect funding, which Friday's vote didn't touch.
Passage in the House sets the stage for a test vote Saturday in the Senate, where Republicans have said they intend to block consideration of the measure unless Democrats grant equal treatment to an alternative measure that opposes cutting funds for the troops.
"I will do everything in my power to ensure the House resolution dies an inglorious death in the Senate," said Sen. Lindsey Graham, R-S.C.
The House measure disapproves of Mr. Bush's decision to increase troop strength, and commits Congress to "support and protect" the troops.
There was never any doubt at the White House that it would lose the House vote. In fact, Knoller reports, officials didn't try very hard to prevent the defeat. But Snow said those who voted for the measure are "gambling on failure."
What has the White House worried, Snow said, is that this resolution might lead to a binding measure to cut off funding or restrict deployments of U.S. troops in Iraq.
Friday's vote came at a time of growing public weariness over the war.
More than half of those surveyed say the Iraq war is a hopeless cause, according to an AP-Ipsos poll released Friday. A total of 38 percent wants to cut money for the additional troops that President Bush is sending to Iraq, and 29 percent want to cut off all funding for the war.
Their vote against the president's troop increase was purely symbolic, but Attkisson reports Democrats are now focusing on the next step: binding actions to halt the surge.
Rep. John Murtha, head of the powerful House committee that approves funding for the war, is the lead architect of the new plan.
"The real vote will come on this legislation I'm putting together," Murtha, D-Pa., said Thursday.
Murtha's legislation would set strict conditions on combat deployments, including a year rest between combat tours; ultimately, the congressman says, his measure would make it impossible for President Bush to maintain his planned deployment of a total of about 160,000 troops for months on end.
"If they can't extend people, if they can't send people back that don't have equipment and so forth, they can't continue the surge is what it amounts to," Murtha said.
Murtha's proposal also might block the funding of military operations inside Iran — a measure intended to send a signal to Mr. Bush that he will need Congress' blessing if he is planning another war.
"The president could veto it, but then he wouldn't have any money," Murtha told an anti-war group in an interview broadcast on movecongress.org.
In a speech Thursday, Mr. Bush said he expects Congress to live up to its promise to support the troops.
"We have a responsibility, Republicans and Democrats have a responsibility, to give our troops the resources they need to do their job and the flexibility they need to prevail," Mr. Bush said.