nginx配置文件

1 http

处理http请求相关的配置。

2 server,虚拟主机

2.1 什么是虚拟主机

虚拟主机是定义在http context下的server。

http {

    server {

        server configuration....

    }

}

一台物理机器虚拟成多台主机,每台虚拟主机独立对外提供www服务,实现一台物理机器对我提供多个web服务器,互不影响。

2.2 三种类型的虚拟主机配置

2.2.1 基于ip地址的虚拟主机

server{
  listen       192.168.1.1:80;
  server_name  localhost;
}
server{
  listen       192.168.1.2:80;
  server_name  localhost;
}

2.2.2 基于端口号的虚拟主机

server{
  listen       80;
  server_name  localhost;
}
server{
  listen       81;
  server_name  localhost;
}

2.2.3 基于域名的虚拟主机

#域名可以有多个,用空格隔开
server{
  listen       80;
  server_name  www.nginx1.com www.nginx2.com;
}
server{
  listen       80;
  server_name  www.nginx3.com;
}

3 events

事件驱动相关的配置,比如配置使用epoll, use epoll。

4 location

匹配url。

5 proxy_pass

   将请求准发给一个proxy,proxy处理完了之后,返回响应给nginx,然后再转发给用户,nginx是一个逆向代理。

location /some/path/ {
    proxy_pass http://www.example.com/link/;
}

6 fastcgi_pass

fastcgi_pass 127.0.0.1:9000; # 表示nginx通过fastcgi_pass将用户请求的资源发给127.0.0.1:9000进行解析,这里的nginx和php脚本解析服务器是在同一台机器上,所以127.0.0.1:9000表示的就是本地的php脚本解析服务器。

7 root

location ^~ /t/ {
     root /www/root/html/;
}

如果一个请求的URI是/t/a.html时,web服务器将会返回服务器上的/www/root/html/t/a.html的文件。
原文地址:https://www.cnblogs.com/hustdc/p/8579632.html