nginx为什么会出现403

nginx为什么会出现403

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

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

[plain] view plain copy worker_processes  1;      events {       worker_connections  1024;   }      http {       include       mime.types;       default_type  application/octet-stream;              sendfile        on;       autoindex       on;       keepalive_timeout  65;     fastcgi_connect_timeout 300;     fastcgi_send_timeout 300;     fastcgi_read_timeout 300;     fastcgi_buffer_size 128k;     fastcgi_buffers 4 128k;     fastcgi_busy_buffers_size 256k;     fastcgi_temp_file_write_size 256k;        #gzip  on;     gzip on;     gzip_min_length  1k;     gzip_buffers     4 32k;     gzip_http_version 1.1;     gzip_comp_level 2;     gzip_types       text/plain application/x-javascript text/css application/xml;     gzip_vary on;     gzip_disable "MSIE [1-6].";        server_names_hash_bucket_size 128;     client_max_body_size     100m;      client_header_buffer_size 256k;     large_client_header_buffers 4 256k;          server {           listen       80;           server_name  localhost;           autoindex       on;   #是否允许访问目录              root   "C:/WWW";           location / {               index  index.html index.htm  l.php;               #index.php              autoindex  on;           }           error_page   500 502 503 504  /50x.html;           location = /50x.html {               root   html;           }              location ~ .php(.*)$  {               fastcgi_pass   127.0.0.1:9000;               #fastcgi_index  index.php;               fastcgi_split_path_info  ^((?U).+.php)(/?.+)$;               fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;               fastcgi_param  PATH_INFO  $fastcgi_path_info;               fastcgi_param  PATH_TRANSLATED  $document_root$fastcgi_path_info;               include        fastcgi_params;           }          }      include vh_*.conf;      }

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

先说403出现的原因

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

因为根目录下也是没有这三个文件的,所以直接

[plain] view plain copy root   "C:/WWW";     location / {         index  index.html index.htm  l.php;         #index.php        autoindex  on;     }

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

这里要注意

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

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

[plain] view plain copy

include vh_*.conf;  

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

更多Nginx相关技术文章,请访问Nginx教程栏目进行学习!

© 版权声明
THE END
喜欢就支持一下吧
点赞9 分享