Nginx 基础入门( 二 )


# yum安装的模块如下都安装好了,模块是固定的,如果想自定义增加模块使用编译安装才可以[root@web01 sbin]# nginx -Vnginx version: nginx/1.20.2built by gcc 4.8.5 20150623 (Red Hat 4.8.5-44) (GCC) built with OpenSSL 1.0.2k-fips26 Jan 2017TLS SNI support enabledconfigure arguments: --prefix=/etc/nginx# 指定安装路径--sbin-path=/usr/sbin/nginx# 程序文件位置--modules-path=/usr/lib64/nginx/modules# 模块路径的位置--conf-path=/etc/nginx/nginx.conf# 主配置文件的位置--error-log-path=/var/log/nginx/error.log # 错误日志位置--http-log-path=/var/log/nginx/access.log# 访问日志位置--pid-path=/var/run/nginx.pid# 程序PID--lock-path=/var/run/nginx.lock# 锁路径,防止重复启动nginx--http-client-body-temp-path=/var/cache/nginx/client_temp# 缓存 --http-proxy-temp-path=/var/cache/nginx/proxy_temp# 代理缓存--http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp# php缓存--http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp# python缓存位置--http-scgi-temp-path=/var/cache/nginx/scgi_temp --user=nginx# 用户--group=nginx# 组--with-compat # 启动动态模块兼容--with-file-aio# 提高性能--with-threads# 多线程模块--with-http_addition_module#响应之前或者之后追加文本内容--with-http_auth_request_module# 认证模块,比如登录密码--with-http_dav_module #增加上传PUT,DELETE,MKCOL:创建集合,COPY和MOVE方法)默认情况下为关闭--with-http_flv_module # NGINX添加MP4、FLV视频支持模块--with-http_gunzip_module# 压缩模块--with-http_gzip_static_module# 压缩模块--with-http_mp4_module# 支持多媒体--with-http_random_index_module# 随机主页--with-http_realip_module# nginx获取真实ip模块--with-http_secure_link_module# nginx安全下载模块--with-http_slice_module# nginx中文文档--with-http_ssl_module# 网站加密--with-http_stub_status_module# 访问状态--with-http_sub_module# nginx替换响应内容--with-http_v2_module# web2.0技术# 邮局--with-mail# 邮件--with-mail_ssl_module # 负载均衡反向代理模块--with-stream --with-stream_realip_module --with-stream_ssl_module --with-stream_ssl_preread_module # CPU优化参数等--with-cc-opt='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -fPIC' --with-ld-opt='-Wl,-z,relro -Wl,-z,now -pie'

编译安装如何平滑增加模块?我总结在此博文
nginx平滑增加模块
6、Nginx配置文件
Nginx 基础入门

文章插图
 
nginx分为全局配置和模块配置
相关文件:/etc/nginx/nginx.conf (主配置文件)

Nginx 基础入门

文章插图
 
配置文件内容
1、全局/核心块 。配置影响nginx全局的指令 。一般有运行nginx服务器的用户组,nginx进程pid存放路径,日志存放路径,配置文件引入,元许生成workerprocess数等 。usernginx;# 指定Nginx的启动用户worker_processesauto;# 开启nginx的数量,可以自定义,建议和CPu一样多,2核就写2个···error_log/var/log/nginx/error.log notice; # 错误日志pid/var/run/nginx.pid;# 进程号存放路径2、events块,配置影响nginx服务器或与用户的网络连接 。有每个进程的最大连接数,选取哪种事件驱动模型处理连接请求,是否允许同时接受多个网路连接,开启多个网络连接序列化等 。events {worker_connections1024;# 进程最大连接数}3、http模块:可以嵌套多个server,配置代理,缓存,日志定义等绝大多数功能和第三方模块的配置 。如文件引入,mime-type定义,日志自定义,是否使用sendfile传输文件,连接超时时间,单连接请求数等 。http {include/etc/nginx/mime.types;# 加载外部的配置项,降低了文件的复杂度default_typeApplication/octet-stream;# 字节流处理方式log_formatmain'$remote_addr - $remote_user [$time_local] "$request" ''$status $body_bytes_sent "$http_referer" ''"$http_user_agent" "$http_x_forwarded_for"';# 日志格式,可以修改为jsonaccess_log/var/log/nginx/access.logmain; # 访问日志sendfileon;# 加速访问、高效读取文件#tcp_nopushon;# 优化keepalive_timeout65;# 长连接,timeout不能太低,不然和短链接一样#gzipon;# 压缩include /etc/nginx/conf.d/*.conf;# 配置文件}4、server块:配置虚拟主机的相关参数,一个http中可以有多个server 5、location块:配置请求的路由,以及各种页面的处理情况