President Donald Trump has signed a revised executive order banning refugees and citizens from six Muslim-majority nations from entering the United States.

For 120 days, the US will not allow any new refugees into the country and for 90 days, visas will not be issued to people from Iran, Libya, Somalia, Sudan, Syria, and Yemen.

These are the major changes to Trump's first immigration order, which was blocked in the courts.

Iraqis off the list - Iraqis are removed from the list of banned nationals. The White House said Iraq was removed because it has imposed new vetting procedures such as heightened visa screening and data sharing, and because of its work with the US in countering ISIL.

Only new visa applicants included - Travellers from the six banned countries who already have visas, and refugees who have already been given visas will not be barred from entering the US.

"Green card" holders and dual citizens exempt - Permanent residents of the US or dual-national citizens from listed countries will not be turned away and "green card" holders travelling abroad will no longer be at risk of being unable to return home.

Implemented from March 16 - The original ban took effect immediately, without warning, causing chaos at airports as travellers already midair when the order was signed were detained in airports and others were prevented from boarding planes.

Syrian refugees not singled out - The original order banned refugees from Syria from entering the US indefinitely. The new order removes that clause.

Loophole closed for religious minorities - While the original order made an exception for refugees who are members of "persecuted religious minorities", saying they could enter the US despite the ban, the new order has no mention of religion.