The European migration crisis will not be solved simply by Britain taking in more refugees, David Cameron has insisted.

The Prime Minister claimed the UK Government was taking action ‘right across the board’ as European leaders struggled to agree on how to cope with unprecedented numbers of asylum seekers.

However opponents said more refugees should be allowed into the country Mr Cameron risked Britain becoming a pariah state that will be ashamed of its inaction.

It came as shocking photographs of a dead Syrian boy washed up on a Turkish beach were widely circulated on social media. The child was believed to be one of 11 Syrian Refugees feared to have drowned while trying to cross the Mediterranean on two boats bound for Kos.

Labour and the Liberal Democrats said Britain must act, while the SNP tweeted comments by Nicola Sturgeon, from a letter she sent to David Cameron last month. “I think most people want to see the U.K. play their part in a humanitarian response,” the First Minister said. “Scotland will play a full part.”

Shadow home secretary Yvette Cooper, who has already called for the UK to take in 10,000 extra refugees, said the Government could not turn its back on the desperate plight of asylum seekers.

The Labour leadership candidate said: "It is heartbreaking what is happening on our continent. We cannot keep turning our backs on this. We can - and must - do more. Let's not look back with shame at our inaction."

Liberal Democrat leader Tim Farron said: "There is a humanitarian crisis on our doorstep but we are disengaged, cold, and irrelevant. We must take our fair share of refugees.

"Cameron's chances of winning meaningful concessions ahead of an EU referendum will disappear fast if he makes our country a pariah - turning his back on our neighbours and desperate refugees.

"His actions are not just morally wrong, they are politically foolish."

The pair spoke after Mr Cameron appeared to ignore German warnings that his EU renegotiation plans could be harmed if Britain refused to take in more refugees.

Instead, Mr Cameron insisted the problem could be tackled at source by working to bring peace and stability to the Middle East and stressed that the UK has taken a number of asylum seekers from Syria.

During a visit to Northamptonshire, he said: "We have taken a number of genuine asylum seekers from Syrian refugee camps and we keep that under review, but we think the most important thing is to try to bring peace and stability to that part of the world. I don't think there is an answer that can be achieved simply by taking more and more refugees."

Mr Cameron added: "We helping countries from which these people are coming, stabilising them and trying to make sure there are worthwhile jobs and stronger economies there.

However Britain has so far has accepted just 216 Syrian refugees under a scheme in partnership with the United Nations.

Mr Cameron also faced pressure from former foreign secretary David Miliband, who called for the UK to take its fair share of refugees as it did when it gave sanctuary to thousands of Europeans who fled persecution in the 1940s and 1950s.

Meanwhile in Calais, hundreds of migrants gained access to tracks carrying Eurostar trains between London and Paris, stranding thousands of passengers in darkness for hours and in Budapest an angry crowd camped outside a station demanding to board trains to Germany.

The crisis has seen thousands of migrants drown in the Mediterranean and others die on land. Greece is particularly under pressure, with aid agencies estimating that about 2,000 people a day have been making the short crossing to Greece's eastern islands on rubber dinghies.

More than 2,500 people have died this year trying to cross the Mediterranean.