Nginx ?
Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器。其特点是占有内存少,并发能力强。
Mac下的安装与启动
-
安装
brew install nginx
如果出现updating homebrew…并且持续很长时间了
可以先执行control + c 取消本次更新操作;或者使用 Alibaba 的 Homebrew 镜像源进行加速
tips -
启动
nginx
-
查看版本
nginx -v
-
判断配置文件是否正确
nginx -t
-
快速停止nginx(可能并不保存相关信息)
nginx -s stop
-
完整有序的停止nginx(完整有序的停止nginx,并保存相关信息。)
nginx -s quit
-
查看Nginx下到底有哪些文档
Nginx在Mac上将会启动 /usr/local/etc/nginx/services 下的所有文件
cd /usr/local/etc/nginx/
进入后ls
查看
配置
nginx.conf文件结构
-
全局块
配置一些
影响整体运行的指令
。 -
events块
影响nginx服务器与用户的网络连接
。这一块的设置对服务的性能影响较大。 -
http块
代理、缓存和日志定义、第三方模块的配置
http块中包含http全局块和多个server块,每个server块中包含server全局块和多个location块,采用就近原则生效。
可进入/usr/local/etc/nginx/nginx.conf
目录进行查看或配置。
具体配置
`运行用户`<br>
user nobody;<br>
`工作进程数,根据硬件调整,通常等于CPU数量或者2倍于CPU`<br>
worker_processes 1;<br>
`错误日志:存放路径`<br>
error_log logs/error.log;<br>
error_log logs/error.log notice; <br>
error_log logs/error.log info;<br>
`pid(进程标识符):存放路径。`<br>
pid logs/nginx.pid;<br>
`工作模式及连接数上限 `<br>
events {<br>
`单个后台worker process进程的最大并发链接数 `<br>
worker_connections 1024;<br>
}<br>
http {<br>
`设定mime类型,类型由mime.type文件定义`<br>
include mime.types;<br>
`默认文件类型`<br>
default_type application/octet-stream;<br>
`默认编码`<br>
charset utf-8;<br>
`成功日志`<br>
#access_log logs/host.access.log main;<br>
`定义错误提示页面`<br>
error_page 500 502 503 504 /50x.html;<br>
location = /50x.html {<br>
root html;<br>
}<br>
`连接超时时间`<br>
keepalive_timeout 65;<br>
`开启gzip压缩 `<br>
gzip on; <br>
`sendfile 指令指定 nginx 是否调用 sendfile 函数(zero copy 方式)来输出文件`<br>
`对于普通应用,必须设为 on`
`如果用来进行下载等应用磁盘IO重负载应用,可设置为 off`<br>
sendfile on; <br>
`设定请求缓冲 `<br>
client_header_buffer_size 128k; <br>
large_client_header_buffers 4 128k; <br>
`设定虚拟主机配置 `<br>
server {<br>
`侦听8080端口`<br>
listen 8080;<br>
`定义使用localhost访问, 转发到哪个地址`<br>
server_name localhost;<br>
`默认请求 `<br>
location / {<br>
`定义服务器的默认网站根目录位置 `<br>
root html;<br>
`定义首页索引文件的名称 `<br>
index index.html index.htm;<br>
}<br>
`定义错误提示页面 `<br>
error_page 500 502 503 504 /50x.html;<br>
location = /50x.html {<br>
root html;<br>
}<br>
`禁止访问 .htxxx 文件`<br>
location ~ /\.ht {<br>
deny all;<br>
}<br>
}<br>
举例
- 配置json文件
进入 /usr/local/Cellar/nginx/版本号 /html/
这个目录下会默认有50x.html和index.html两个文件
你再新加一个json文件,取个名字叫poiu.json,里面随便写些对象数组,保存 - 判断Nginx配置json是否成功
进入你的网站看看能不能打开文件
通过 ip/文件名来打开 localhost/poiu.json