Bosses at NHS Highland have announced the measure at Raigmore Hospital in Inverness.
The move comes after ward 2C was closed on Tuesday after four cases of norovirus were confirmed. Ward 6C has also been closed due to “a number” of confirmed cases.
The health board said its infection prevention and control team is monitoring the situation.
Dr Vanda Plecko, NHS Highland’s consultant microbiologist, said: “Staff across NHS Highland are working very hard to reduce the risk of these infections spreading across the hospital and we continue to appeal for support from the public to help with this.
“We have now put in place a temporary suspension of visiting for all non-essential visitors to help us protect our patients and reduce, as much as possible, the risk of norovirus spreading across the hospital.
“We are grateful for the support staff across all our hospitals in NHS Highland are receiving from the public at the moment and appreciate everyone’s understanding and co-operation at this time.”
Anyone who feels it is essential they visit the hospital is asked to contact the relevant ward by phone first.