The UK is to provide resettlement to "thousands" more Syrian refugees in response to the worsening humanitarian crisis, David Cameron has announced.
No figure has been decided but the prime minister said the extra refugees would come from camps bordering Syria, not from among those already in Europe.
Britain, he said, would act with "head and heart" to help those most in need.
He also announced a further £100m in humanitarian aid for those in camps in Syria, Turkey, Jordan and the Lebanon.
Earlier this week, Mr Cameron said accepting more people was not the simple answer to the situation, described by some as the worst humanitarian crisis since World War Two.
But speaking in Lisbon after talks with his Portuguese counterpart, Mr Cameron said the UK had a "moral responsibility" to help those displaced by the four-year conflict in Syria and more details would follow next week following discussions with organisations working in the region.
Meanwhile, a large group of migrants stuck at Budapest railway station for days have set off on foot, saying they intend to walk to Austria, as the Hungarian authorities try to contain thousands trying to reach western Europe.
Calls for the UK to take in more refugees have intensified after the publication of a picture of the body of a drowned three-year-old Syrian boy, Alan Kurdi, washed up a Turkish beach.
Speaking to the BBC's Victoria Derbyshire programme, the boy's aunt, Tima Kurdi, said his and his brother's death should be "a wake-up call for the whole world".
The government's approach to the crisis has continued to come under pressure from public and political figures, including:
- Scottish First Minister Nicola Sturgeon has written to Mr Cameron calling for the UK to accept more refugees and said Scotland would take in 1,000 "as a starting point"
- Ex Lib Dem leader Lord Ashdown said the PM's response had been "shameful"
- Bristol's mayor urged residents of the city to use their spare rooms to help
- Former Conservative Defence Secretary Liam Fox called for a safe zone in Syria to help those in fear of persecution
- A petition calling on the UK to accept more refugees has got more than three times the 100,000 signatures needed for it to be eligible for a possible debate in Parliament
By deputy political editor James Landale
The prime minister isn't changing his argument.
He still thinks opening up Europe's borders and agreeing quotas will not solve the refugee crisis. In fact, he thinks it would make it worse by increasing pull factors and encouraging people traffickers.
But, as the crisis gets worse and the public and political pressure grows, the prime minister does now accept that Britain has a moral duty to do more.
No targets have been agreed but his talk of taking thousands more is unlikely to satisfy his many critics who want Britain to take in tens of thousands of refugees and who have been outraged by his reluctance to act.
Nearly 5,000 Syrians have been granted asylum in the last four years and the UK has accepted 216 Syrian refugees under a scheme to relocate the most vulnerable begun in early 2014.
Mr Cameron said "careful consideration" would be given to the numbers allowed into the UK, with the emphasis on those who had "lost hope and were genuinely fleeing persecution".
"This provides them with a more direct and safe route to the United Kingdom rather than risking the hazardous journey which has tragically cost so many of their lives," he said.
But Mr Cameron said this was only one response to the crisis and the UK's latest aid pledge - taking total humanitarian support to more than £1bn - was equally important.
How will plan work?
Mr Cameron's plan suggests he may expand the Syrian Vulnerable Persons Relocation (VPR) scheme - though the Home Office said details were not yet available.
Under VPR, 216 Syrians have been brought to the UK since March 2014. People arriving in the UK in need of protection usually have to apply for asylum - and if this is granted they get "refugee" status.
But people brought to Britain under VPR have not gone through this process. Instead, they have been granted Humanitarian Protection, a status normally used for people who "don't qualify for asylum" but would be at "real risk of suffering serious harm" in their home country.
Like people granted refugee status, those given Humanitarian Protection can stay for five years, after which they can apply to settle in the UK.
People in both categories have the right to work and access public funds.
Pressed for more details about how many people would be helped, International Development Secretary Justine Greening said there would be "no quotas", since such an approach could fuel people smuggling.
"It's much smarter and safer to help them directly relocate from refugee camps," she told BBC Radio 4's World at One programme.
As the UN said EU countries should accept up to 200,000 refugees, the Archbishop of Canterbury warned their plight was "one of the most appalling and enormous crises the world has seen".
"There has to be a short term response of compassion," Justin Welby said. "There has to be a long term strategy of tackling conflict. It is an absolute moral duty."
Speaking to the World at One, Save the Children chief executive Justin Forsyth said the UK should take in 10,000 refugees from the Middle East region, as well as 3,000 unaccompanied children that have already reached Europe's borders.
But UKIP leader Nigel Farage warned that giving "incentives" risked a "stampede" of people trying to get to Europe. "I'm sorry to say that I think the shocking image that we saw of that young boy and the deaths in those lorries actually become more likely," he said.