1. 下载nginx离线安装包
前往官网下载离线压缩包
2. 下载3个依赖
- openssl依赖,前往 官网下载
- pcre2依赖下载,前往Git下载
- zlib依赖下载,前往Git下载
下载完成后完整的包如下:
如果网速下载不到请使用网盘下载
通过网盘分享的文件:nginx
链接: https://pan.baidu.com/s/1BUHbrEg29Hr0lz-SQFZHMQ?pwd=mgyv 提取码: mgyv
3. 先安装依赖
将三个依赖全部解压。tar -zxvf + 包名称
- 进入解压后的
openssl-3.4.0
的文件夹内,右键打开终端,然后执行以下命令。
./config && make && make install
- 进入解压后的
pcre2-10.44
的文件夹内,右键打开终端,然后执行以下命令
./configure && make && make install
- 进入解压后的
zlib-1.3.1
的文件夹内,右键打开终端,然后执行以下命令
./configure && make && make install
4. 再安装nginx
- 将上面依赖安装完成后在进行操作。
- 将上面准备的
nginx-1.24.0
解压,然后进入解压后的文件夹内。右键打开终端,执行以下命令
./configure && make && make install
4.1. 配置服务
- 到根目录下
/usr/lib/systemd/system
文件夹里新建nginx.service
文件或修改现有的。
[Unit]Description=nginx serviceAfter=network.target[Service]Type=forkingExecStart=/usr/local/nginx/sbin/nginxExecReload=/usr/local/nginx/sbin/nginx -s reloadExecStop=/usr/local/nginx/sbin/nginx -s stopPrivateTmp=true[Install]WantedBy=multi-user.target
在终端以下命令,刷新服务配置。
- systemctl daemon-reload
4.2. 验证
启动后在浏览器输入ip地址,如下图即可
5. 操作
5.1. 服务操作
5.1.1. 启动nginx服务
打开终端执行以下命令。
systemctl start nginx.service
5.1.2. 停止nginx服务
打开终端执行以下命令。
systemctl stop nginx.service
5.1.3. 查看nginx状态
打开终端执行以下命令。
systemctl status nginx.service
5.2. 负载均衡配置
- 配置完成需要重启
5.3. 更换文件
- 将上面准备的
nginx.conf
文件(下面有完整示例)复制到根目录(文件系统里)下/usr/local/nginx/conf
文件夹里,替换掉原有的。 - 然后重新启动nginx服务
文件配置说明:
以下是完整配置(去掉了多余的)
worker_processes 8; #CPU核心数默认为1。可以设置为4,调高就行events {worker_connections 102400;#允许同时建立外部连接的数量。可以调整为`100000`(10万)
}http {include mime.types;default_type application/octet-stream;map $time_iso8601 $logdate{'~^(?<ymd>\d{4}-\d{2}-\d{2})' $ymd;default 'date-not-found';}access_log logs/access-$logdate.log;sendfile on;keepalive_timeout 10;upstream localtomcat{ip_hash;server 127.0.0.1:8070 max_fails=2 fail_timeout=5s weight=1;#weight 是配置服务器权重 ,越大则分配概率越大server 127.0.0.1:8090 max_fails=3 fail_timeout=5s weight=1;}server {listen 8080; #默认监听80端口,修改为8080server_name localhost;location /vepts {proxy_pass http://localtomcat;proxy_http_version 1.1;proxy_set_header Connection "";# nginx非80端口处理 proxy_set_header Host $host:$server_port; # 获取真实IP proxy_set_header X-Real-IP $remote_addr; # 获取代理者的真实ip proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; # 解决getScheme,isSecure,sendRedirectproxy_set_header X-Forwarded-Scheme $scheme; client_max_body_size 10m; client_body_buffer_size 128k; proxy_connect_timeout 1; proxy_send_timeout 30; proxy_read_timeout 60; proxy_buffer_size 4k; proxy_buffers 4 32k; proxy_busy_buffers_size 64k; proxy_temp_file_write_size 64k;}location ~* \.(gif|jpg|jpeg|png|css|js|ico)$ {proxy_pass http://localtomcat;}error_page 500 502 503 504 /50x.html;location = /50x.html {root html;}}
}
-
worker_processes
:CPU核心数默认为1。可以设置为4,调高就行 -
events
: -
worker_connections
:允许同时建立外部连接的数量。可以调整为100000
(10万)
-
http
-
upstream
:设置Tomcat
服务地址。括号里可以增加多个server
-
-
server
:一个server
代表一个Tomcat服务地址。组成是Tomcat
的地址跟端口号,不用带项目名称。根据示例按照需要增加server
。
-
-
server
:
-
-
listen
:设置监听的端口。如果检测站配置的接口地址中是8080,这里就修改成8080。(注意不要与Tomcat端口重复,否则起不来)
at服务地址。括号里可以增加多个
server`
-
-
-
server
:一个server
代表一个Tomcat服务地址。组成是Tomcat
的地址跟端口号,不用带项目名称。根据示例按照需要增加server
。
-
-
server
:
-
-
listen
:设置监听的端口。如果检测站配置的接口地址中是8080,这里就修改成8080。(注意不要与Tomcat端口重复,否则起不来)server_name
:服务名称。可以修改成实际IP
-
6. 遇到的问题
需要去除斜杠,否则加载不到index.html
减配原文带有斜杠的
location / {root /usr/local/nginx/html;index index.html index.htm;try_files \$uri \$uri/ /index.html;}
修改后的
location / {root /usr/local/nginx/html;index index.html index.htm;try_files $uri $uri/ /index.html;}
其他linux系统环境安装
Linux x86_64离线安装Nginx全教程(含安装包)