1,缺少index.html或者index.php文件
server {
listen 80;
server_name localhost;
index index.php index.html;
root /home/zhangy/www;
如果在/home/zhang/www下面沒有index.php,index.html的時候,直接訪問域名,找不到文件,會報403 forbidden。例如:你訪問www.test.com而這個域名,對應的root指定的索引文件不存在。
2,權限問題
因爲權限問題引起的403,個人覺得比較難查找,因爲一時想不起
server {
listen 80;
server_name localhost;
index index.php index.html;
root /home/zhangy/www;
我把web目錄放在用戶的所屬目錄下面,nginx的啓動用戶默認是nginx的,所以對目錄根本沒有讀的權限,這樣就會報403錯誤了。這個時候,把web目錄的權限改大,或者是把nginx的啓動用戶改成目錄的所屬用戶,重起一下就能解決。