平凡也就两个字: 懒和惰;
成功也就两个字: 苦和勤;
优秀也就两个字: 你和我。
跟着我从0学习JAVA、spring全家桶和linux运维等知识,带你从懵懂少年走向人生巅峰,迎娶白富美!
关注微信公众号【 IT特靠谱 】,每天都会分享技术心得~
Nginx概述及目录介绍
参考文档链接:Beginner’s Guide
1.1.Nginx概述
Nginx 是一款面向性能设计的HTTP服务器,相较于 Apache、lighttpd 具有占有内存少,稳定性高等优势。在生产环境中,常用于实现虚拟服务、负载均衡、服务代理转发、缓存和限流等业务场景。
Nginx服务启动后,会开启一个master主进程和多个(或一个)worker工作进程。Master进程主要负责读取配置文件、执行配置文件和维护所有worker进程。Worker进程则负责处理各种请求。nginx使用基于事件的模型和依赖于操作系统的机制来有效地在工作进程之间分发请求。Worker工作进程的数量在配置文件中定义,可以设置一个固定的数量,也可配置成自动调整工作进程数(自动调整为可用的cpu核心数大小),详细内容详见本专栏的worker_processes指令。
配置文件的配置内容决定了nginx和nginx的各个module模块如何工作。默认情况下,配置文件名称为:nginx.conf,其所在的目录在:/usr/local/nginx/conf、/etc/nginx、或 /usr/local/etc/nginx下。Nginx基本运行原理如下图:
1.2.Nginx目录详解
解压或安装完成后,我们可以看到nginx安装目录下有如下目录结构。以下是从官网下载的windows版本nginx压缩包解压后的目录结构,linux版本的略有差异,但不大。下面以windows版本的nginx目录作为讲解,压缩包解压后目录结构如下:
下面对nginx目录进行详细说明:
(1)conf:Nginx所有配置文件的目录
conf目录下有很多配置文件(如下图所示)。
1)fastcgi.conf:fastcgi相关参数的配置文件
2)fastcgi_params:fastcgi的参数文件
3)koi-utf:未知
4)koi-win:未知
5)mime.types:媒体类型文件,如果存在不支持的媒体类型,我们可以自己添加到该文件中。
6)nginx.conf:这是Nginx默认的主配置文件,日常使用和修改的文件。有些还有nginx.conf.default文件,该文件是nginx.conf初始配置文件的备份。
7)scgi_params:scgi相关参数文件
8)uwsgi_params: uwsgi相关参数文件
9)win-utf:未知
(2)contrib:未知作用
(3)docs:文档目录。存放的是一些license文件和readme帮助文件等。
(4)html:Nginx默认站点目录。
html目录下默认存在50x.html和index.html两个静态资源文件。因为在nginx.conf配置文件中配置使用了首页(index.html)的文件路径和发生错误后重定向的错误页(50x.html)文件路径。
(5)logs:Nginx的日志文件目录。
logs目录下默认存放access.txt、error.txt和nginx.pid目录
1)access.txt:记录nginx请求的日志信息;
2)error.txt:记录nginx请求异常的日志信息;
3)nginx.pid:记录nginx服务运行时的master主进程的进程ID,文件里面只有一个ID号。
(6)temp:Nginx服务运行过程中产生的临时文件目录。
1)client_body_temp:POST请求大文件暂存目录;
2)fastcgi_temp: fastcgi临时数据目录;
3)proxy_temp:代理相关的临时数据目录
4)scgi_temp:scgi临时目录
5)uwsgi_temp:uwsgi临时目录
(7)nginx:Nginx服务的启动可执行文件。双击该文件即可启动nginx服务进程。
博主微信公众号:IT特靠谱,学习更多开发实战技巧!