Is a virtual private server or virtual machine required to get your webserver to show your .onion correctly. I cannot get my onion viewable and this is the only thing I havent tried. It makes no nense to me why I would need them but most guides out there have a vps...
Neither a VPS or a VM is required to have a working hidden service. You need to configure your torrc file setting up:
HiddenServiceDir /var/lib/tor/hidden_service/ HiddenServicePort 80 127.0.0.1:80
In the first row you have to setup the directory that contain the files of your HS, and the second row obviously setup the port of your HD. Once you setted up, restart Tor. Then you should view two file in your HiddenServiceDir: hostname (contains your .onion address), private_key (don't share this one with someone). The reason of using VM or VPS, is a security reason. Usually you use Whonix like VM because is dedicated for Tor (server side), or you can use a VPS for bandwidth reason. So, to run a HS you require of the correct configuration of your torrc file, this is a must! Without this you won't get a working HS. Is your choise to use a VM or a VPS, I suggest you to use a VPS with a VM running Whonix.
PS: what did you tried?