nginx配置入门

1、安装

  • 下载 http://nginx.org/
  • 解压


    nginx目录结构
  • 启动
    不要直接双击nginx.exe,这样会导致修改配置后重启、停止nginx无效,需要手动关闭任务管理器内的所有nginx进程。
    在nginx.exe目录,打开命令行工具,用命令 启动/关闭/重启nginx
// 1、启动nginx
start nginx     //启动后,访问localhost即可看到nginx的欢迎页面
// 2、当你的 nginx 实例运行时,你可以通过发送相应的信号来管理它
nginx -s signal    //signal可以是:reload,reopen,stop,quit
// 2.1、修改配置后重新加载生效 ,配置文件位于 conf\nginx.conf
nginx -s reload  
// 2.2、重新打开日志文件
nginx -s reopen  
// 2.3、快速停止nginx
nginx -s stop 
// 2.4、完整有序的停止nginx
nginx -s quit  
// 3、测试nginx配置文件是否正确
nginx -t -c /path/to/nginx.conf 

2、配置详解

配置文件主要由下面两个部分构成:

  • 指令 – 可选项,包含名称和参数,以分号结尾
  • 上下文 – 分块, 类似于编程语言中的作用域
worker_processes 2; # 全局上下文指令
http {              # http 上下文
    gzip on;        # http 上下文中的指令
    server {          # server 上下文
       listen 80;      # server 上下文中的指令
    }
}

常用指令:
1、listen 和 server_name指令

server {     // 虚拟主机server可以有多个      
  listen      *:80 default_server;
  server_name netguru.co;
  return 200 "Hello from netguru.co";
}

这将告诉 Nginx 如何处理到来的请求。Nginx 将会首先通过检查 listen 指令来测试哪一个虚拟主机在监听给定的 IP 端口组合。
然后,server_name 指令的值将检测 Host 头(存储着主机域名)。
Nginx 将会按照下列顺序选择虚拟主机:
匹配sever_name指令的IP-端口主机
拥有default_server标记的IP-端口主机
首先定义的IP-端口主机
如果没有匹配,拒绝连接。
2、root指令
root 指令设置请求的根目录,允许 nginx 将传入请求映射到文件系统。

server {
  listen 80;
  server_name netguru.co;
  root /var/www/netguru.co;
}

ESC 服务器的 root 基地址是:/root

3、location 指令
location [modifier] path

// modifier 如下,匹配优先级依次降低
=            - 精准match
^~          - 优先 match
~            - 正则 match(大小写敏感)
~*           - 正则 match(大小写不敏感)   //  ~*  /match/
no modifier - 前缀 match  

4、try_files 指令
尝试不同的路径,找到一个路径就返回。

// nginx 解决 history 路由模式刷新404问题配置
server {
        listen 8105; // 表示你nginx监听的端口号
        root /home/admin/sites/vue-nginx/dist; // vue打包后的文件夹dist目录
        index index.html; 
        location / {
                 try_files $uri $uri/ /index.html; 
        }
}

所以对于 /foo.html 请求,它将尝试按以下顺序返回文件:
$uri ( /foo.html )
index.html
如果什么都没找到则返回 404
5、proxy_pass指令
配合location实现反向代理,用于跨域。注意末尾有没有斜杠。

3、参考:

1、https://www.cnblogs.com/saysmy/p/6609796.html
2、http://blog.jobbole.com/113555/

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容