|
前言
传统的 Web 服务器软件在处理高并发连接时效率较低,容易出现响应缓慢甚至崩溃的情况。伊戈尔·赛索耶夫通过开发 Nginx,采用了事件驱动、异步非阻塞的架构设计。这种设计使得 Nginx 能够在不消耗大量系统资源的前提下,高效地处理数以万计的并发连接,让 Rambler.ru 可以稳定地应对高流量访问,避免了因并发问题导致的服务中断,显著提升了用户体验。
Nginx对静态资源的处理能力非常高效,它可以快速地将网站的图片、CSS、JavaScript等静态文件传输给用户。这使得页面加载速度大幅提升,用户能够更快地看到网站内容。对于一个依赖流量和用户体验的门户网站来说,快速的响应速度能够增加用户的停留时间和访问频率,提高网站的整体竞争力。
环境:
操作系统 | 软件包 | IP地址 | UOS Server 1021 | nginx-1.19.5.tar.gz | 192.168.10.101 | 一、下载依赖软件包
- wget https://ftp.exim.org/pub/pcre/pcre-8.43.tar.gz &&tar xzf pcre-8.43.tar.gz
- wget https://github.com/madler/zlib/releases/download/v1.2.13/zlib-1.2.13.tar.gz &&tar xzf zlib-1.2.13.tar.gz
- wget https://www.openssl.org/source/openssl-1.1.1d.tar.gz &&tar xzf openssl-1.1.1d.tar.gz
复制代码 二、安装 Nginx
- wget https://nginx.org/download/nginx-1.19.5.tar.gz &&tar zxf nginx-1.19.5.tar.gz
复制代码- cd nginx-1.19.5/
- ~/nginx-1.19.5# ./configure --prefix=/usr/local/nginx --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx.pid --user=nginx --group=nginx --with-http_v2_module --with-pcre=../pcre-8.43 --with-zlib=../zlib-1.2.13 --with-openssl=../openssl-1.1.1d# 参数解释--prefix=/usr/local/nginx # 指定nginx安装路径
- --error-log-path=/var/log/nginx/error.log # 指定错误日志
- --http-log-path=/var/log/nginx/access.log # 指定正常日志
- --pid-path=/var/run/nginx.pid # 指定PID文件--user=nginx # 指定程序用户--group=nginx # 指定程序的用户组
- --with-http_v2_module # 支持谷歌spdy,用于减小网络延迟,提高网速
- --with-openssl=../openssl-1.1.1d # 指定nginx ssl模块依赖的ssl库
- ~/nginx-1.19.5# make -j4 && make install
复制代码- useradd-M-s /sbin/nologin nginx
- # 优化执行路径ln-s /usr/local/nginx/sbin/nginx /usr/sbin/nginx
复制代码- nginx
- netstat-anput|grep80
- tcp 000.0.0.0:80 0.0.0.0:* LISTEN 25764/nginx: master
- Nginx常用命令
- nginx # 启动
- nginx –v # 查看版本
- nginx –t # 检测语法
- nginx –s stop # 停止nginx
- nginx –s reload # 重新加载nginx(不停止服务)
复制代码 三、编写 Nginx 启动文件
- vim /usr/lib/systemd/system/nginx.service
- [Unit]Description=The nginx HTTP Server
- After=network.target remote-fs.target nss-lookup.target
- [Service]Type=forking
- PIDFile=/var/run/nginx.pid
- ExecStart=/usr/local/nginx/sbin/nginx
- ExecReload=/usr/local/nginx/sbin/nginx -s reload
- ExecStop=/usr/local/nginx/sbin/nginx -s stop
- PrivateTmp=true
- [Install]WantedBy=multi-user.target
复制代码 启动 Nginx 并加入开机自启
- systemctl daemon-reload
- systemctl enable--now nginx
- Created symlink /etc/systemd/system/multi-user.target.wants/nginx.service → /lib/systemd/system/nginx.service.
- systemctl status nginx
复制代码 验证:
- aptinstall elinks
- elinks 192.168.10.101
复制代码
|
|