【Linux服务器Java环境搭建】011在linux中安装Nginx,以及停止或启动Nginx服务

 系列文章目录

【Linux服务器Java环境搭建】


前言

又到了周五晚上了,最近工作上有些忙,忙于一个需求频繁变更的项目,都快吐血了,懂得都懂,哈哈,正好有时间了,继续写系列【Linux服务器Java环境搭建】吧,争取这两天把整个系列都写完,加油! 那就继续吧,今天主要是安装和配置Nginx。


一、Nginx是什么?

Nginx(发音类似于“engine-x”)是一款开源的、高性能的HTTP服务器和反向代理服务器,同时也是一个IMAP/POP3/SMTP邮件代理服务器。它最初由俄罗斯的程序员伊戈尔·赛索耶夫(Igor Sysoev)在2004年发布,旨在解决C10K问题,即如何高效处理超过一万个并发连接的问题。

Nginx广泛应用于各种互联网服务,包括Web服务器、内容分发网络(CDN)、负载均衡器和API网关等。它不仅在高流量网站和应用中得到了广泛应用,而且也是许多微服务架构和云原生应用的首选组件。

  • 高性能和高并发:Nginx以其高效的事件驱动架构著称,可以处理大量的并发连接,远高于传统的Apache HTTP服务器。

  • 低资源消耗:由于其高效的架构,Nginx在处理大量请求时消耗的内存和CPU资源非常少。

  • 负载均衡:Nginx可以作为反向代理服务器,将客户端的请求分发到多个后端服务器,以实现负载均衡,提高应用的可用性和稳定性。

  • 静态文件服务:Nginx在提供静态文件(如HTML、图像、视频等)方面表现出色,能够快速、高效地处理这些请求。

  • 反向代理:Nginx可以作为反向代理服务器,将客户端请求转发到后端的应用服务器,并处理来自后端服务器的响应。

  • 模块化设计:Nginx采用模块化设计,允许用户根据需求加载或卸载不同的模块,以实现扩展功能,例如SSL/TLS、身份验证、访问控制等。

  • 简单的配置文件:Nginx的配置文件使用简单而直观的语法,便于配置和管理。

二、下载及安装

1.nginx下载

下载地址:nginx: download

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
import warnings
warnings.filterwarnings('ignore')
import  ssl
ssl._create_default_https_context = ssl._create_unverified_context

2.预先安装所需依赖

yum -y install pcre-devel
yum -y install openssl openssl-devel

在安装Nginx之前,先安装以下软件包是因为Nginx的某些功能和模块需要这些包中的文件和库来支持和编译。

  • pcre-devel: PCRE(Perl Compatible Regular Expressions)软件包提供了正则表达式的支持。Nginx使用PCRE来支持HTTP模块中的正则表达式匹配功能。

  • openssl 和 openssl-devel: OpenSSL是一个用于加密和安全通信的库。Nginx可以使用OpenSSL来支持HTTPS和SSL/TLS协议,openssl-devel则提供了开发过程中所需的文件和头文件,以便Nginx可以与OpenSSL进行集成。

安装这些软件包是为了确保在编译Nginx时拥有必要的依赖项,从而支持Nginx的各种功能和模块,特别是与HTTPS、压缩和正则表达式相关的功能。

3.nginx安装

A.将安装包通过xftp上传到服务器目录/root/lzh/

B.在目录 /usr/local/ 下创建 nginx ⽂件夹并进⼊

[root@lzh-2024 local]# cd /usr/local/
[root@lzh-2024 local]# mkdir nginx
[root@lzh-2024 local]# cd nginx/
[root@lzh-2024 nginx]# 

C.将刚下下载的Nginx 安装包解压到 /usr/local/nginx 中

[root@lzh-2024 nginx]# tar zxvf /lzh/nginx-1.26.1.tar.gz -C ./

解压完之后, /usr/local/nginx ⽬录中会出现⼀个 nginx-1.26.1的⽬录

4.设置并安装nginx

A.设置

[root@lzh-2024 nginx]# cd nginx-1.26.1/
[root@lzh-2024 nginx-1.26.1]# ./configure 

B.安装

[root@lzh-2024 nginx-1.26.1]# make && make install

安装完成后,Nginx的可执⾏⽂件位置位于

/usr/local/nginx/sbin/nginx

三、启动或停止Nginx

A.启动命令

[root@lzh-2024 sbin]# /usr/local/nginx/sbin/nginx 

B.停止命令(nginx后一定要加空格)

[root@lzh-2024 sbin]# /usr/local/nginx/sbin/nginx -s stop

C.重启命令(nginx后一定要加空格)

[root@lzh-2024 sbin]# /usr/local/nginx/sbin/nginx  -s reload

D.配置文件位置

[root@lzh-2024 sbin]# cat /usr/local/nginx/conf/nginx.conf

如下为整个配置内容

#user  nobody;
worker_processes  1;#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;#pid        logs/nginx.pid;events {worker_connections  1024;
}http {include       mime.types;default_type  application/octet-stream;#log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '#                  '$status $body_bytes_sent "$http_referer" '#                  '"$http_user_agent" "$http_x_forwarded_for"';#access_log  logs/access.log  main;sendfile        on;#tcp_nopush     on;#keepalive_timeout  0;keepalive_timeout  65;#gzip  on;server {listen       80;server_name  localhost;#charset koi8-r;#access_log  logs/host.access.log  main;location / {root   html;index  index.html index.htm;}#error_page  404              /404.html;# redirect server error pages to the static page /50x.html#error_page   500 502 503 504  /50x.html;location = /50x.html {root   html;}# proxy the PHP scripts to Apache listening on 127.0.0.1:80##location ~ \.php$ {#    proxy_pass   http://127.0.0.1;#}# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000##location ~ \.php$ {#    root           html;#    fastcgi_pass   127.0.0.1:9000;#    fastcgi_index  index.php;#    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;#    include        fastcgi_params;#}# deny access to .htaccess files, if Apache's document root# concurs with nginx's one##location ~ /\.ht {#    deny  all;#}}# another virtual host using mix of IP-, name-, and port-based configuration##server {#    listen       8000;#    listen       somename:8080;#    server_name  somename  alias  another.alias;#    location / {#        root   html;#        index  index.html index.htm;#    }#}# HTTPS server##server {#    listen       443 ssl;#    server_name  localhost;#    ssl_certificate      cert.pem;#    ssl_certificate_key  cert.key;#    ssl_session_cache    shared:SSL:1m;#    ssl_session_timeout  5m;#    ssl_ciphers  HIGH:!aNULL:!MD5;#    ssl_prefer_server_ciphers  on;#    location / {#        root   html;#        index  index.html index.htm;#    }#}}

四、 验证

在浏览器中输入服务器IP地址(端口默认为80,可以省略),如果浏览器看到如下界面,安装成功


五、总结

至此,Nginx就安装完成了,其实还是挺简单的是吧,今天只是简单安装以及启动停止Nginx,在系列【Linux服务器Java环境搭建】的后续部分,将会结合实际项目对站点的发布以及部署进行讲解,到时候会详细讲解Nginx的具体配置,敬请期待!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/873439.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

linux远程主机和windows互传

一.winscp 最简单,但有时候会出现连不上 二 .MobaXterm 可以选择多种连接方式 二. 配置samba服务器 1. 新增samba用户 sudo pdbedit -L -v 查看当前samba用户 sudo smbpasswd -a guoziyi 添加samba用户 sudo smbpasswd -x guoziyi 删除samba用户 2. 编辑/etc…

SpringBoot如何限制请求访问次数

在Spring Boot应用中限制请求访问次数可以通过几种不同的方法实现,如使用Rate Limiting中间件或自定义拦截器。以下是一些常见的实现方法: 方法1:使用Spring Boot内置的Rate Limiting工具 1.1 使用Bucket4j Bucket4j是一个Java库&#xff…

matlab实现绘制矢量图

在MATLAB中绘制矢量图(Vector Field)主要涉及到使用箭头来表示向量的大小和方向。这可以通过quiver函数(注意:MATLAB的官方函数是quiver,但请注意它可能是quiver3的误写,因为quiver3用于三维矢量场&#xf…

ArcGIS Pro SDK (九)几何 6 包络

ArcGIS Pro SDK (九)几何 6 包络 文章目录 ArcGIS Pro SDK (九)几何 6 包络1 构造包络2 构造包络 - 从 JSON 字符串3 合并两个包络4 与两个包络相交5 展开包络6 更新包络的坐标 环境:Visual Studio 2022 .NET6 ArcGI…

加油卡APP系统开发:在线优惠加油,拓展市场

目前,我国汽车行业发展迅速,用车群体逐年扩大,因此,汽车加油市场规模呈现出了快速增长趋势。不过近年来,油价不断上涨,增加了居民的生活成本,为了节省汽车加油的支出,很多人都开始选…

使用idea创建Javaweb项目(步骤)

第一步创建Javaweb项目 File>New>Project 第二步 勾选Web Application >Next 然后就是进行起名,完成。 完成创建项目,检查是否文件齐全 配置tomcat 配置好,就能启动tomcat,显示首页 导入jar包。导入进项目&#xf…

【力扣】最小栈

🔥博客主页: 我要成为C领域大神🎥系列专栏:【C核心编程】 【计算机网络】 【Linux编程】 【操作系统】 ❤️感谢大家点赞👍收藏⭐评论✍️ 本博客致力于知识分享,与更多的人进行学习交流 设计一个支持 push…

数仓工具—Hive语法之替换函数和示例

Hive 替换函数和示例 默认情况下,并没有可用的 Hive 替换函数。如果在处理字符串时需要替换特定值,例如垃圾值,字符串操作函数替换是非常需要的。在本文中,我们将检查 Hive 替换函数 的替代方法,以便在需要时使用。 如前所述,Apache Hive 不提供替换函数的支持。但是,…

信息系统是一个社会技术系统

一.管理信息系统定义 (1) 技术视角 信息系统是: ——由若干相互连接的部件组成的; ——对组织中的信息进行收集、处理、储存和传递的系统; ——用以支持组织制定决策和管理控制; ——还可以协助管理者与员工分析问题、可视…

PLC中的高低字节如何理解?

双字(Double Word,通常是32位整数)的高低字节定义可能会因具体的PLC型号和通信协议而有所不同。通常,双字可以被划分为两个16位字,每个16位字又分为高字节和低字节。 以下是一般定义: 双字(32…

【异常解决】Unable to start embedded Tomcat Nacos 启动报错

Unable to start embedded Tomcat Nacos 启动报错解决方案 一、背景描述二、原因分析三、解决方案 一、背景描述 Windows 本地启动 Nacos(2.2.0) 服务,控制台报错 Unable to start embedded Tomcat。 报错信息:Unable to start …

《JavaScript语言精粹》学习笔记——数组

JavaScript中并没有像数组一样的数据结构。而是提供了一种拥有一些类数组特性的对象。 数组字面量 var numbers[one,two,three,four,izero,seven,eight]//对象字面量 var numbers object{1:"one",2:"two" };numbers继承自Array.prototype,而n…

HarmonyOS Next原生应用开发-从TS到ArkTS的适配规则(六)

一、仅支持一个静态块 规则:arkts-no-multiple-static-blocks 级别:错误 ArkTS不允许类中有多个静态块,如果存在多个静态块语句,请合并到一个静态块中。 TypeScript class C {static s: stringstatic {C.s aa}static {C.s C.s …

nginx负载均衡实例

实现效果 浏览器输入地址http://nginx服务器ip(:80)/edu/a.html,实现负债均衡效果,平均分配到 服务器ip:8080和 服务器ip:8081进程中。 准备工作 准备两个tomcat,一个监听在8080端口,一个监听在8081端口。也可以准备多个tomcat。…

数据结构小测试:排序算法

目录 1、请简述数据结构八大排序算法的思路。 2、常用排序算法手写 冒泡排序: 选择排序: 快速排序: 归并排序: 堆排序: 3、额外再加一个二分查找吧 1、请简述数据结构八大排序算法的思路。 冒泡排序&#xff…

c# DI构造函数注入

构造函数注入(Constructor Injection)是依赖注入(DI)的一种形式,是指通过类的构造函数将依赖项(通常是其他类或接口的实例)传递给类的实例。 这种方式可以让类在实例化时就具备所需的依赖项&am…

Linux——多路复用之select

目录 前言 一、select的认识 二、select的接口 三、select的使用 四、select的优缺点 前言 在前面,我们学习了五种IO模型,对IO有了基本的认识,知道了select效率很高,可以等待多个文件描述符,那他是如何等待的呢&a…

Dubbo 的泛化调用

在分布式系统中,有时我们需要调用一些未知的服务接口,这些接口可能在编译时并不存在,或者由于版本问题而发生变化。为了应对这种情况,Apache Dubbo 提供了泛化调用(Generic Invocation)功能,使得…

易保全参与起草的两项区块链全国团体标准正式发布

在数字化转型浪潮席卷全球的今天,区块链技术以其去中心化、透明性、不可篡改等独特优势,正逐步成为重塑各行各业信任机制与业务流程的关键力量。 近日,中国通信工业协会正式发布了《区块链服务 基于区块链的去中心化标识符技术要求》与《区块…

python--实验14 并发编程(多线程)

知识点 1 并发编程 1.1程序提速手段 1.2多任务 并发 在一个CPU一段时间内交替去执行任务。在各个任务之间快速地切换,给人的感觉就是多个任务在“同时进行”。 并行 对于多核CPU处理多任务,操作系统会给CPU的每个内核安排一个执行的软件,多…