51工具盒子

依楼听风雨
笑看云卷云舒,淡观潮起潮落

nginx 安装-rpm(离线安装)

比如启用四层stream 转发的时候 或者加点监控等其他插件 , rmp 就不合适了,需要编译安装

1.官网获取rpm安装包

创建目录 /usr/local/nginx,将rpm包下载到该目录下

mdkir /usr/local/nginx

wget  https://nginx.org/packages/centos/7/x86_64/RPMS/nginx-1.24.0-1.el7.ngx.x86_64.rpm  

其他版本:

https://nginx.org/packages/centos/7/x86_64/RPMS/

2-安装:

rpm -ivh nginx-1.24.0-1.el7.ngx.x86_64.rp

使用rmp安装,默认启用了所有nginx模块,如下

configure 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 --lock-path=/var/run/nginx.lock --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 --http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp --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 --with-http_flv_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_mp4_module --with-http_random_index_module --with-http_realip_module --with-http_secure_link_module --with-http_slice_module --with-http_ssl_module --with-http_stub_status_module --with-http_sub_module --with-http_v2_module --with-mail --with-mail_ssl_module --with-stream --with-stream_realip_module --with-stream_ssl_module --with-stream_ssl_preread_module --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'

4.查看nginx安装目录

[root@localhost ~]# find / -name nginx
/etc/logrotate.d/nginx
/etc/nginx        #主目录及配置文件
/var/log/nginx    #日志
/var/cache/nginx  #缓存
/usr/sbin/nginx   #主程序
/usr/lib64/nginx  #组件模块
/usr/share/nginx  #html主页

特别关注:以上目录其实在安装程序时指定,可以通过查看nginx版本命令确认安装时指定的参数,包括各项目录以及常用模块,如stream

rpm安装默认生成系统服务文件,可以通过 service 或 systemctl 命令操作

find / -name nginx.service


/usr/lib/systemd/system/nginx.service

三、主程序加入到环境变量
rpm安装默认已经将主程序添加到系统变量

ll /usr/sbin/nginx

四、配置文件
配置文件存放在 /etc/nginx/nginx.conf,启动时默认加载该路径,也可以在启动时指定配置文件,配置文件结构如下,分为3个部分:全局块、events块、http块

配置文件说明
1.全局块
从配置文件开始到 events 块之间的内容,主要会设置一些影响 nginx 服务器整体运行的配置指令,主要包括配置运行 Nginx 服务器的用户(组)、允许生成的 worker process 数,进程 PID 存放路径、日志存放路径和类型以及配置文件的引入等

#定义Nginx运行的用户和用户组
user nginx nginx;

#nginx进程数,建议设置为等于CPU总核心数
worker_processes 8; 

#全局错误日志定义类型,[ debug | info | notice | warn | error | crit ]
error_log /var/log/nginx/error.log info; 

#进程文件
pid /var/run/nginx.pid; 

#nginxworker最大打开文件数,可设置为系统优化后的ulimit -n的结果
worker_rlimit_nofile 65535;

2.events块

events
{
    #epoll模型是Linux 2.6以上内核版本中的高性能网络I/O模型,如果跑在FreeBSD上面,就用kqueue模型    
    use epoll;    
    
    #单个worker进程最大连接数(nginx最大连接数=worker连接数*进程数)    
    worker_connections 65535;
}

3.http块
这部分应该是 Nginx 服务器配置中最频繁的部分;代理、缓存和日志定义等绝大多数功能和第三方模块的配置都在这里。
http块分为:http全局块、server块。

http 
{
    #nginx支持的媒体类型库文件
    include mime.types; 
    
    #默认媒体文件类型
    default_type application/octet-stream; 
    
    #默认编码
    charset utf-8; 
    
    #服务器名字的hash表大小
    server_names_hash_bucket_size 128; 
    
    #上传文件大小限制
    client_header_buffer_size 32k; 
    
    #开启高效文件传输模式,实现内核零拷贝
    sendfile on; 
    
    #开启目录列表访问,适合下载服务器,默认关闭。
    autoindex off; 
    
    #长连接超时时间,单位是秒
    keepalive_timeout 120; 
}

3.2http server块的配置,即虚拟主机的配置

server #网站配置区域
{
    #默认监听80端口
    listen 80;     
    
    #提供服务的域名主机名
    server_name www.sample.com;    
    location / { 
        #站点根目录(这里html是相对路径,默认网站根目录为:/usr/local/nginx/html)
            root html;
            
        #默认首页文件,多个用空格分开
            index index.thml index.htm;
    }

    #出现对应http状态码时,使用50x.html回应客户
    error_page 500 502 503 504  /50x.html;    

    location = /50x.thml {
        #指定对应目录
        root    html; 
    }
}
赞(5)
未经允许不得转载:工具盒子 » nginx 安装-rpm(离线安装)