nginx简介
Nginx (发音为 "engine-x")是一个高性能的 Web 服务器和反向代理服务器,同时也支持 IMAP/POP3/SMTP 协议服务。它由伊戈尔·赛索耶夫在2004年为俄罗斯访问量排名第二的网站 Rambler.ru 开发,并于同年10月4日发布了第一个公开版本0.1.0。Nginx以它的稳定性、丰富的功能集、简洁的配置文件以及低系统资源消耗而闻名,尤其在处理高并发连接方面表现出色,因此常作为Apache服务器的替代方案,特别是在需要处理大量并发请求的场景中。
nginx包下载
nginx官网下载(这个链接需要科学上网)
nginx下载(这个国内可以访问)
或者使用wget直接下载:
yum install -y wget vim
cd /usr/local/src
wget https://nginx.org/download/nginx-1.13.7.tar.gz
nginx安装
关闭防火墙和selinux
systemctl stop firewalld.service (关闭防火墙)
systemctl start firewalld.service (开启防火墙)
systemctl status firewalld.service (查看防火墙状态)
systemctl disable firewalld.service (禁止防火墙自启动)
systemctl enable firewalld.service (防火墙随系统开启启动)
vim /etc/selinux/config
将SELINUX状态改为disabled
设置环境变量
cat << "EOF" >> /etc/profile
export NGINX_HOME=/usr/local/nginx
export PATH=$NGINX_HOME/sbin:$PATH
EOF
source /etc/profile
我使用的是nginx-1.13.7,并且我已经将下载的包上传到了/usr/local/src/目录下
安装插件
yum install gcc-c++
yum install -y pcre pcre-devel
yum install -y zlib zlib-devel
yum install -y openssl openssl-devel
安装nginx
cd /usr/local/src/
tar zxf nginx-1.13.7.tar.gz
groupadd -r nginx
useradd -r -g nginx -s /sbin/nologin -M nginx
mkdir -p /usr/local/nginx/tmp/{client,proxy,fcgi}
cd nginx-1.13.7
./configure \
--user=nginx \
--group=nginx \
--prefix=/usr/local/nginx \
--pid-path=/usr/local/nginx/pid/nginx.pid \
--with-stream \
--with-http_ssl_module \
--with-http_flv_module \
--with-http_gzip_static_module \
--with-http_stub_status_module \
--http-client-body-temp-path=/usr/local/nginx/tmp/client \
--http-proxy-temp-path=/usr/local/nginx/tmp/proxy \
--http-fastcgi-temp-path=/usr/local/nginx/tmp/fcgi
make && make install
chmod u+s /usr/local/nginx/sbin/nginx
创建自启动文件
cat << EOF >> /usr/lib/systemd/system/nginx.service
[Unit]
Description=nginx - high performance web server
After=network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
PIDfile=/usr/local/nginx/pid/nginx.pid
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s quit
PrivateTmp=true
[Install]
WantedBy=multi-user.target
EOF
#设置开机自启
systemctl enable nginx.service
#运行nginx
systemctl start nginx.service
#查看状态
systemctl status nginx.service