I used this article https://www.digitalocean.com/community/articles/how-to-set-up-nginx-virtual-hosts-server-blocks-on-ubuntu-12-04-lts--3 to setup virtual hosts on nginx but I'm getting a 403 forbidden error.
The article tells us to do this to set permissions
`You can replace the "www-data" below with the appropriate username.
sudo chown -R www-data:www-data /var/www/example.com/public_html
Additionally, it is important to make sure that everyone is able to read our new files.
sudo chmod 755 /var/www`
I therefore did this with my username
sudo chown -R username:username /var/www/example.com/public_html
but I'm still getting the 403 forbidden errror. Do you know anything I can try?
The username used in the chown command should be the ones which nginx runs with - you can check that by running the command:
ps -ef | grep nginx (You are looking at the first column on any of the nginx worker processes
Once you chown with the good username you also need to restart nginx:
@Kamal Nasser, I'm Having the same problem. If i keep the index.html file when i go to the domain I see this "Success: You Have Set Up a Virtual Host" if I remove it I get the "403 forbidden error" any solution to this. thanks in advance
@doper408: Simply replace index.html with your own index.html that you want to use and you should be fine. If it's a PHP app, replace index.html with your own index.php file and make sure the index directive is set to index.php index.html (e.g.: index index.php index.html;) in your nginx's virtual host config.
@Kamal Nasser , thanks a lot that work great, but only for the main page when a visit a page for example, domain.com/example I get "500 Internal Server Error" any suggestion to fix this. thanks in advance