Nginx 也是当前流行的一款 轻量级服务器  在日常使用中呢 也会出现一些问题  今天 学习君 在安装配置Nginx的时候就出现了 403 Forbindden 的被禁止访问的错误   网上搜索之后呢 完美解决  这里给大家分享下


话不多说 先粘 上 原版nginx 配置文件代码 


[plain] view plain copy

  1. worker_processes  1;  

  2.   

  3. events {  

  4.     worker_connections  1024;  

  5. }  

  6.   

  7. http {  

  8.     include       mime.types;  

  9.     default_type  application/octet-stream;  

  10.       

  11.     sendfile        on;  

  12.     autoindex       on;  

  13.     keepalive_timeout  65;  

  14.   fastcgi_connect_timeout 300;  

  15.   fastcgi_send_timeout 300;  

  16.   fastcgi_read_timeout 300;  

  17.   fastcgi_buffer_size 128k;  

  18.   fastcgi_buffers 4 128k;  

  19.   fastcgi_busy_buffers_size 256k;  

  20.   fastcgi_temp_file_write_size 256k;  

  21.   

  22.   #gzip  on;  

  23.   gzip on;  

  24.   gzip_min_length  1k;  

  25.   gzip_buffers     4 32k;  

  26.   gzip_http_version 1.1;  

  27.   gzip_comp_level 2;  

  28.   gzip_types       text/plain application/x-javascript text/css application/xml;  

  29.   gzip_vary on;  

  30.   gzip_disable "MSIE [1-6].";  

  31.   

  32.   server_names_hash_bucket_size 128;  

  33.   client_max_body_size     100m;   

  34.   client_header_buffer_size 256k;  

  35.   large_client_header_buffers 4 256k;  

  36.   

  37.     server {  

  38.         listen       80;  

  39.         server_name  localhost;  

  40.         autoindex       on;   #是否允许访问目录  

  41.   

  42.         root   "C:/WWW";  

  43.         location / {  

  44.             index  index.html index.htm  l.php;  

  45.             #index.php  

  46.            autoindex  on;  

  47.         }  

  48.         error_page   500 502 503 504  /50x.html;  

  49.         location = /50x.html {  

  50.             root   html;  

  51.         }  

  52.   

  53.         location ~ \.php(.*)$  {  

  54.             fastcgi_pass   127.0.0.1:9000;  

  55.             #fastcgi_index  index.php;  

  56.             fastcgi_split_path_info  ^((?U).+\.php)(/?.+)$;  

  57.             fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;  

  58.             fastcgi_param  PATH_INFO  $fastcgi_path_info;  

  59.             fastcgi_param  PATH_TRANSLATED  $document_root$fastcgi_path_info;  

  60.             include        fastcgi_params;  

  61.         }  

  62.   

  63.     }  

  64.   

  65. include vh_*.conf;  

  66.   

  67. }  


这么多配置文件代码(为了便于查看 已经把注释的那些不懂的删除)  学习君也是看不懂的

先说403 出现的原因

当访问该地址的时候,nginx 会按照 index.html,index.htm ,index.php 的先后顺序在根目录中查找文件。如果这三个文件都不存在,那么nginx就会返回403 Forbidden。


学习君根目录下也是没有这三个文件的 所以直接

[plain] view plain copy

  1. root   "C:/WWW";  

  2.   location / {  

  3.       index  index.html index.htm  l.php;  

  4.       #index.php  

  5.      autoindex  on;  

  6.   }  

注释   项目列表就展示出来了

这里要注意

autoindex on; 这个默认是off的  意思是禁止访问目录  需要开启 


还有一点推荐大家别把配置项 都写在这个文件当中 不便于管理  

[plain] view plain copy

  1. include vh_*.conf;  

可以引入   这样一个域名一个配置文件  方便管理