McCain was born on a military base which is considered to be US soil.
Actually he wasn’t as there was no hospital on the military base, so his natural born status is also in question; at any rate, this has been discussed many times on these threads. But he definitely was NOT born on a US military base.
No it is not. Being born on a U.S. soil means that the person is automatically a citizen per the 14th Amendment. But if a Panamanian national gave birth in the Canal zone or a German national gives birth on a U.S. base in Germany then in neither case is the baby a U.S. citizen of any kind.
Children born on U.S. bases abroad are considered natural born citizens because their parent or parents are U.S. citizens. However, that is in part what this whole arguement is about. By the strict definition of natural born citizen promoted by D'Onofrio and the author of this article, McCain is not a natural born U.S. citizen.