Nginx安装教程-Linux

简介: Nginx安装教程-Linux

1. 引言

写了个jar包,其他人调用的时候发现效率很慢,于是同事说,用Nginx做个

负载均衡吧。这不就记录一下。

2. 下载

官网下载稳定版:http://nginx.org/en/download.html

dfe8f9bedc174fb58b10e2e35cee98a1.png

3. 上传

这里使用xftp或者WinScp等工具直接拖拽上传到某个目录。

常用工具如下:

4. 解压

切换到压缩包所在位置进行解压

cd /usr/local/
tar -zxvf nginx-1.22.0.tar.gz

e62b41598fa8493385e36e66a907b162.png

5. 安装所需环境

# 安装gcc
yum install gcc-c++

e883da73666540ca9555b80783528f9b.png

# 安装PCRE pcre-devel 用于解析正则表达式
yum install -y pcre pcre-devel

d7f19e2f60fb4c85b7b504e92c9eec42.png

# 安装zlib 压缩和解压缩依赖
yum install -y zlib zlib-devel

53709eb6a0014765bc49aad7a7c7b630.png

# 安装Open SSL 安全的加密的套接字协议层,用于HTTP安全传输,也就是https
yum install -y openssl openssl-devel

c16713be9b274678840323170d8d410e.png

6. 安装nginx

6.1 创建nginx临时目录

mkdir /var/temp/nginx -p

6.2 创建makefile文件

切换到Nginx解压的目录 cd /usr/local/nginx-1.22.0,执行以下命令(注意安装和编译不能在一个目录,下面命令的第二行的地址不要和你解压目录一样)

./configure \
--prefix=/usr/local/nginx \
--pid-path=/var/run/nginx/nginx.pid \
--lock-path=/var/lock/nginx.lock \
--error-log-path=/var/log/nginx/error.log \
--http-log-path=/var/log/nginx/access.log \
--with-http_gzip_static_module \
--http-client-body-temp-path=/var/temp/nginx/client \
--http-proxy-temp-path=/var/temp/nginx/proxy \
--http-fastcgi-temp-path=/var/temp/nginx/fastcgi \
--http-uwsgi-temp-path=/var/temp/nginx/uwsgi \
--http-scgi-temp-path=/var/temp/nginx/scgi

配置命令说明:

-prefix 指定Nginx安装目录
-pid-path 指向Nginx的pid
-lock-path  锁定安装文件,防止被恶意褚篡改或误操作
-error-log  错误日志
–http-log-path  http日志
–with-http_gzip_static_module 启用gzip模块,在线实时压缩输出数据流
–http-client-body-temp-path 设定客户端请求的临时目录
–http-proxy-temp-path 设定http代理临时目录
–http-fastcgi-temp-path 设定fastcgi临时目录
–http-uwsgi-temp-path 设定uwsgi临时目录
–http-scgi-temp-path  设定scgi临时目录

6218908eced7490f9af8ff3356c070a7.png

6.3 make编译

make

6.4 执行make install命令 安装

make install

6.5 启动Nginx

进入/usr/local/nginx/sbin目录,输入./nginx即可启动nginx

6.6 测试是否成功

直接访问你的虚拟机或者服务器的ip,提示如下图所示即安装成功。

如果安装正常,但是访问不了,如果是虚拟机或者本地可以直接尝试关闭防火墙。云服务器尝试开启80端口。

7. 开机自启

7.0 关闭Nginx

# 切换目录
cd /usr/local/nginx/sbin/
# 停止服务
./nginx -s quit  或者 ./nginx -s stop

7.1 编写脚本

vim /etc/systemd/system/nginx.service

复制粘贴以下内容,注意看下路径是否有差异。

[Unit]
Description=nginx service
After=network.target

[Service]
Type=forking
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

3d9327ab8c31464a84c3ee91844208bd.png

7.2 设置权限

chmod +x /etc/systemd/system/nginx.service

7.3 修改nginx.pid默认目录

vim /usr/local/nginx/conf/nginx.conf

422c850214204b53bedc4ee73fa044b2.png

  1. 取消注释,并修改为/usr/local/nginx/logs/nginx.pid;
  2. 在 /usr/local/nginx 目录下创建 logs 目录:mkdir /usr/local/nginx/logs

7.4 设置开机自启

systemctl enable nginx

c0a5563929d5444e8b7de1ec301b113b.png

7.4.1 其他命令

# 启动nginx服务
systemctl start nginx.service
# 重新启动服务
systemctl restart nginx.service
# 查看服务当前状态
systemctl status nginx.service
# 停止开机自启动
systemctl disable nginx.service

8. nginx常用命令

如按第七步添加了开机自启服务,可参照 7.4 的命令。

# 启动nginx
./nginx

# 关闭nginx
./nginx -s quit  或者 ./nginx -s stop

# 重新加载
./nginx -s reload

# 查看nginx进程
ps -ef|grep nginx

#检查配置文件语法是否正确
./nginx -t


相关文章
|
2月前
|
存储 Linux Android开发
Volatility3内存取证工具安装及入门在Linux下的安装教程
Volatility 是一个完全开源的工具,用于从内存 (RAM) 样本中提取数字工件。支持Windows,Linux,MaC,Android等多类型操作系统系统的内存取证。针对竞赛这块(CTF、技能大赛等)基本上都是用在Misc方向的取证题上面,很多没有听说过或者不会用这款工具的同学在打比赛的时候就很难受。以前很多赛项都是使用vol2.6都可以完成,但是由于操作系统更新,部分系统2.6已经不支持了,如:Win10 等镜像,而Volatility3是支持这些新版本操作系统的。
|
23天前
|
应用服务中间件 Linux 网络安全
|
23天前
|
Linux 应用服务中间件 nginx
Linux 快速搭建 Overleaf 5.0 附中文字体及完整 TexLive 安装教程(2024最新版)
2024最新版 Linux 极速安装 Overleaf 5.0 手把手教学!附 XeLatex 修复,新增中文字体以及安装完整版 TexLive 教程!
|
2天前
|
机器学习/深度学习 Linux Shell
超详细的Linux-Conda环境安装教程
超详细的Linux-Conda环境安装教程
|
12天前
|
安全 应用服务中间件 Linux
linux编译安装nginx
linux编译安装nginx
|
1月前
|
Ubuntu 应用服务中间件 Linux
Linux学习之Ubuntu 20中OpenResty的nginx目录里内容和配置文件
总的来说,OpenResty的Nginx配置文件是一个强大的工具,它允许你以非常灵活的方式定义你的Web服务的行为。
24 2
|
15天前
|
应用服务中间件 Linux API
Linux 利用 Cloudflare API 配置 acme.sh 自动续签 SSL (Apache、Nginx适用)
安装acme.sh工具,命令为`curl https://get.acme.sh | sh -s email=你的邮箱`。接着配置Cloudflare API,创建并记录API令牌及Zone ID。最后通过`acme.sh --issue -d 你的域名 --dns dns_cf`签发SSL证书,对于Nginx可使用`acme.sh --install-cert`命令安装证书,并设置自动重载Nginx服务。
|
2月前
|
NoSQL 关系型数据库 MySQL
linux服务器重启php,nginx,redis,mysql命令
linux服务器重启php,nginx,redis,mysql命令
46 1
|
2月前
|
Ubuntu 应用服务中间件 Linux
Linux Centos7 ubuntu 安装nginx,脚本一键安装nginx
Linux Centos7 ubuntu 安装nginx,脚本一键安装nginx
71 2
|
2月前
|
安全 Linux Python
【安全狗】linux免费服务器防护软件安全狗详细安装教程
【安全狗】linux免费服务器防护软件安全狗详细安装教程
219 0