当前位置: 首页 > news >正文

Nginx服务安装

        Nginx(发音为[engine x])专为性能优化而开发,其最知名的优点是它的稳定性和低系统资源消 耗,以及对HTTP并发连接的高处理能力(单台物理服务器可支持30000~50000个并发请求)。正因 为如此,大量提供社交网络、新闻资讯.电子商务及虚拟主机等服务的企业纷纷选择Nginx来提 供Web服务。

安装及运行控制

        Nginx最新的稳定版本为1.12.0.其安装文件可以从官方网站http://www.nginx.org/下载。

1.编译安装Nginx

(1)安装支持软件

Nginx的配置及运行需要pcre、zlib等软件包的支持,因此应预先安装这些软件的开发包(devel)。以便提供相应的库和头文件,确保Nginx的安装顺利完成,具体安装命令如下所示。

[root@llcgc ~]# mount /dev/cdrom /mnt/       //先挂载光盘
mount: /dev/sr0 写保护,将以只读方式挂载
[root@llcgc ~]# yum -y install pcre-devel zlib-devel

(2)创建运行用户、组

Nginx服务程序默认以nobody身份运行,建议为其创建专门的用户账号,以便更准确地控制其 访问权限,增加灵活性,降低安全风险,例如,创建一个名为nginx的用户.不建立宿主文件夹,也 禁止登录到 Shell 环境。

[root@llcgc ~]# useradd -M -s /sbin/nologin nginx

(3)编译安装

配置 Nginx的编译选项时,将安装目录设为/usr/locael/nginx,运行用户及组均设为nginx;启用 http_stub_status_module模块以支持状态统计,便于查看服务器的连接信息。具体选项根据实际需要 来定,配置前可参考“./configure--help”给出的说明。

[root@llcgc ~]# rz -E    //将源码包nginx-1.12.0.tar.gz拉进来
rz waiting to receive.[root@llcgc ~]# tar zxf nginx-1.12.0.tar.gz 
[root@llcgc ~]# cd nginx-1.12.0/
[root@llcgc nginx-1.12.0]# ./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_stub_status_module
[root@llcgc nginx-1.12.0]# make
[root@llcgc nginx-1.12.0]# make install

为了使Nginx服务器的运行更加方便,可以为主程序nginx创建链接文件,以便管理员直接执行 “nginx”命令就可以调用Nginx的主程序。

[root@llcgc nginx-1.12.0]# ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/
[root@llcgc nginx-1.12.0]# ls -l /usr/local/sbin/nginx 
lrwxrwxrwx. 1 root root 27 1月  11 15:09 /usr/local/sbin/nginx -> /usr/local/nginx/sbin/nginx

2.Nginx的运行控制

(1)检测配置文件

与Apache的主程序httpd类似,Nginx的主程序也提供了“-t”选项用来对配置文件进行检查. 以便找出不当或错误的配置.配置文件nginx.conf默认位于安装目录下的conf/子目录中,若要检查位于其他位置的配置文件,可使用“-c”选项来指定路径。

[root@llcgc ~]# nginx -t

(2)启动、停止Nginx

直接运行nginx命令即可启动Nginx服务器,这种方式将使用默认的配置文件,若要改用其他配 置文件,需添加“-c配置文件路径”选项来指定配置文件路径,需要注意的是,若服务器中已装有 httpd等其他Web服务软件,应采取修改端口、停用或卸载等措施避免端口冲突。

[root@llcgc ~]# nginx 

启动后浏览器直接访问本机IP地址就可以连接到该画面:

        通过检查Nginx程序的监听状态,或者在浏览器中访问此Web 服务(默认页面将显示“Welcome to nginx!"),可以确认Nginx服务是否正常运行,下面示例中提到的elirks是Linux系统中常用的文本浏览器。

[root@llcgc ~]# netstat -anpt | grep nginx
[root@llcgc ~]# yum install -y elinks
[root@llcgc ~]# elinks http://llcgc    //使用elinks浏览器访问web服务时,显示“Welcome to nginx”页面,表明Nginx服务已经正常运行

主程序Nginx支持标准的进程信号,通过kill或killall命令发送HUP信号表示重载配置,QUIT信 号表示退出进程,KIL信号表示杀死进程,例如,若使用killall命令,重载配置、停止服务的操作分 别如下所示(通过‘-s选项指定信号种类),最小化安装的centos系统默认没有安装killall命令, 需要先通过yum安装

[root@llcgc ~]# yum install -y psmisc
[root@llcgc ~]# killall -s HUP nginx
[root@llcgc ~]# killall -s QUIT nginx

当Nginx进程运行时,PID号默认存放在logs/目录下的nginx.pid文件中,因此若改用kill命令, 也可以根据nginx.pid文件中的PID号来进行控制。

(3)使用Nginx服务脚本

为了使Nginx服务的启动,停止.重载等操作更加方便,可以编写Nginx服务脚本,并使用chkconfig和systemctl 工具来进行管理,也更加符合CentOS系统的管理习惯。

[root@llcgc ~]# vim /etc/init.d/nginx
#!/bin/bash
#chkconfig: - 99 20
#description:Nginx Service Control Script
PROG="/usr/local/nginx/sbin/nginx"
PIDF="/usr/local/nginx/logs/nginx.pid"
case "$1" instart)$PROG;;stop)kill -s QUIT $(cat $PIDF);;restart)$0 stop$0 start;;reload)kill -s HUP $(cat $PIDF);;*)echo "Usage: $0 {start|stop|restart|reload}"exit 1
esac
exit 0
[root@llcgc ~]# chmod +x /etc/init.d/nginx      //给脚本执行权限
[root@llcgc ~]# chkconfig --add nginx           //添加为系统服务
[root@llcgc ~]# systemctl status nginx          //查看Nginx服务状态
● nginx.service - SYSV: Nginx Service Control ScriptLoaded: loaded (/etc/rc.d/init.d/nginx; bad; vendor preset: disabled)Active: inactive (dead)Docs: man:systemd-sysv-generator(8)

这样,就可以通过systemctl命令控制Nginx脚本来启动、停止、重启、重载Nginx服务器了,方 法是在执行时添加相应的start.stop.restart.reload参数。

相关文章:

Nginx服务安装

Nginx(发音为[engine x])专为性能优化而开发,其最知名的优点是它的稳定性和低系统资源消 耗,以及对HTTP并发连接的高处理能力(单台物理服务器可支持30000~50000个并发请求)。正因 为如此,大量提供社交网络、…...

微信小程序canvas画布实现矩形元素自由缩放、移动功能

一、获取画布信息并绘制背景 .whml <canvas class="canvas" type="2d" id="myCanvas" bindtouchstart="get_rect_touch_position" bindtouchmove="move_or_scale" bind:tap="finish_edit_check"/> 定义c…...

一文搞懂 Python 3 中的数据类型

介绍 在 Python 中&#xff0c;与所有编程语言一样&#xff0c;数据类型用于对一种特定类型的数据进行分类。这很重要&#xff0c;因为您使用的特定数据类型将决定您可以为其分配哪些值以及您可以对其执行哪些操作&#xff08;包括可以对其执行哪些操作&#xff09;。 1. 数字…...

学习笔记之——3D Gaussian Splatting源码解读

之前博客对3DGS进行了学习与调研 学习笔记之——3D Gaussian Splatting及其在SLAM与自动驾驶上的应用调研-CSDN博客文章浏览阅读450次。论文主页3D Gaussian Splatting是最近NeRF方面的突破性工作&#xff0c;它的特点在于重建质量高的情况下还能接入传统光栅化&#xff0c;优…...

Flink standalone集群部署配置

文章目录 简介软件依赖部署方案二、安装1.下载并解压2.ssh免密登录3.修改配置文件3.启动集群4.访问 Web UI 简介 Flink独立模式&#xff08;Standalone&#xff09;是部署 Flink 最基本也是最简单的方式&#xff1a;所需要的所有 Flink 组件&#xff0c; 都只是操作系统上运行…...

Python: + 运算符、append() 方法和 extend()方法的区别和用法

在Python中&#xff0c;有几种常见的方式可以向列表中添加元素&#xff0c;其中包括使用 运算符、append() 方法和 extend() 方法。 使用 运算符&#xff1a; 运算符用于合并两个列表。 通过创建一个新列表&#xff0c;包含两个被合并的列表的元素。不会修改原始列表&…...

【MySQL】mysql集群

文章目录 一、mysql日志错误日志查询日志二进制日志慢查询日志redo log和undo log 二、mysql集群主从复制原理介绍配置命令 读写分离原理介绍配置命令 三、mysql分库分表垂直拆分水平拆分 一、mysql日志 MySQL日志 是记录 MySQL 数据库系统运行过程中不同事件和操作的信息的文件…...

zabbix监控windows主机

下载安装zabbix agent安装包 Zabbix官网下载地址: https://www.zabbix.com/cn/download_agents?version5.0LTS&release5.0.40&osWindows&os_versionAny&hardwareamd64&encryptionOpenSSL&packagingMSI&show_legacy0 这里使用zabbix agent2 安装 …...

单例模式的八种写法、单例和并发的关系

文章目录 1.单例模式的作用2.单例模式的适用场景3.饿汉式静态常量&#xff08;可用&#xff09;静态代码块&#xff08;可用&#xff09; 4.懒汉式线程不安全&#xff08;不可用&#xff09;同步方法&#xff08;线程安全&#xff0c;但不推荐用&#xff09;同步代码块&#xf…...

基于实时Linux+FPGA实现NI CompactRIO系统详解

利用集成的软件工具链&#xff0c;结合信号调理I/O模块&#xff0c;轻松构建和部署实时应用程序。 什么是CompactRIO&#xff1f; CompactRIO系统提供了高处理性能、传感器专用I/O和紧密集成的软件工具&#xff0c;使其成为工业物联网、监测和控制应用的理想之选。实时处理器提…...

Webhook端口中的自定义签名身份认证

概述 如果需要通过 Webhook 端口从交易伙伴处接收数据&#xff0c;但该交易伙伴可能对于安全性有着较高的要求&#xff0c;而不仅仅是用于验证入站 Webhook 要求的基本身份验证用户名/密码&#xff0c;或者用户可能只想在入站 Webhook 消息上增加额外的安全层。 使用 Webhook…...

用Linux的视角来理解缓冲区概念

缓冲区的认识 缓冲区&#xff08;buffer&#xff09;是存储数据的临时存储区域。当我们用C语言向文件中写入数据时&#xff0c;数据并不会直接的写到文件中&#xff0c;中途还经过了缓冲区&#xff0c;而我们需要对缓冲区的数据进行刷新&#xff0c;那么数据才算写到文件当中。…...

C#中Enumerable.Range(Int32, Int32) 方法用于计算

目录 一、关于Enumerable.Range(Int32, Int32) 方法 1.定义 2.Enumerable.Range(&#xff09;用于数学计算的操作方法 3.实例1&#xff1a;显示整型数1~9的平方 4.实例2&#xff1a;显示整型数0~9 5.实例3&#xff1a;Enumerable.Range(&#xff09;vs for循环 &#x…...

Linux和windows进程同步与线程同步那些事儿(四):windows 下进程同步

Linux和windows进程同步与线程同步那些事儿&#xff08;一&#xff09; Linux和windows进程同步与线程同步那些事儿&#xff08;二&#xff09;&#xff1a; windows线程同步详解示例 Linux和windows进程同步与线程同步那些事儿&#xff08;三&#xff09;&#xff1a; Linux线…...

1. Logback介绍

Logback介绍 Logback旨在成为流行的log4j项目的继任者。它由Ceki Glc设计&#xff0c;他是log4j的创始人。它基于十年在设计工业级日志系统方 面的经验。结果产品&#xff0c;即logback&#xff0c;比所有现有的日志系统更快&#xff0c;具有更小的占用空间&#xff0c;有时差距…...

SqueezeNet:通过紧凑架构彻底改变深度学习

一、介绍 在深度学习领域&#xff0c;对效率和性能的追求往往会带来创新的架构。SqueezeNet 是神经网络设计的一项突破&#xff0c;体现了这种追求。本文深入研究了 SqueezeNet 的复杂性&#xff0c;探讨其独特的架构、设计背后的基本原理、应用及其对深度学习领域的影响。 在创…...

Python:正则表达式之re.group()用法

Python正则表达式之re.group()用法学习笔记 正则表达式是在处理字符串时非常有用的工具&#xff0c;而re.group()是在匹配到的文本中提取特定分组内容的方法之一。 1. re.group()的基本用法 在正则表达式中&#xff0c;通过圆括号可以创建一个或多个分组。re.group()用于获取…...

Shiro框架:Shiro登录认证流程源码解析

目录 1.用户登录认证流程 1.1 生成认证Token 1.2 用户登录认证 1.2.1 SecurityManager login流程解析 1.2.1.1 authenticate方法进行登录认证 1.2.1.1.1 单Realm认证 1.2.1.2 认证通过后创建登录用户对象 1.2.1.2.1 复制SubjectContext 1.2.1.2.2 对subjectContext设…...

WEB前端人机交互导论实验-实训2格式化文本、段落与列表

1.项目1 文本与段落标记的应用&#xff1a; A.题目要求: B.思路&#xff1a; &#xff08;1&#xff09;首先&#xff0c;HTML文档的基本结构是通过<html>...</html>标签包围的&#xff0c;包含了头部信息和页面主体内容。 &#xff08;2&#xff09;在头部信息…...

Python:list列表与tuple元组的区别

在Python中&#xff0c;List&#xff08;列表&#xff09; 和Tuple&#xff08;元组&#xff09; 都是用于存储一组有序元素的数据结构&#xff0c;但它们有一些关键的区别&#xff0c;包括可变性、性能、语法等方面。 1. List&#xff08;列表&#xff09; 用法&#xff1a;…...

19c补丁后oracle属主变化,导致不能识别磁盘组

补丁后服务器重启&#xff0c;数据库再次无法启动 ORA01017: invalid username/password; logon denied Oracle 19c 在打上 19.23 或以上补丁版本后&#xff0c;存在与用户组权限相关的问题。具体表现为&#xff0c;Oracle 实例的运行用户&#xff08;oracle&#xff09;和集…...

大数据学习栈记——Neo4j的安装与使用

本文介绍图数据库Neofj的安装与使用&#xff0c;操作系统&#xff1a;Ubuntu24.04&#xff0c;Neofj版本&#xff1a;2025.04.0。 Apt安装 Neofj可以进行官网安装&#xff1a;Neo4j Deployment Center - Graph Database & Analytics 我这里安装是添加软件源的方法 最新版…...

盘古信息PCB行业解决方案:以全域场景重构,激活智造新未来

一、破局&#xff1a;PCB行业的时代之问 在数字经济蓬勃发展的浪潮中&#xff0c;PCB&#xff08;印制电路板&#xff09;作为 “电子产品之母”&#xff0c;其重要性愈发凸显。随着 5G、人工智能等新兴技术的加速渗透&#xff0c;PCB行业面临着前所未有的挑战与机遇。产品迭代…...

PPT|230页| 制造集团企业供应链端到端的数字化解决方案:从需求到结算的全链路业务闭环构建

制造业采购供应链管理是企业运营的核心环节&#xff0c;供应链协同管理在供应链上下游企业之间建立紧密的合作关系&#xff0c;通过信息共享、资源整合、业务协同等方式&#xff0c;实现供应链的全面管理和优化&#xff0c;提高供应链的效率和透明度&#xff0c;降低供应链的成…...

蓝桥杯 2024 15届国赛 A组 儿童节快乐

P10576 [蓝桥杯 2024 国 A] 儿童节快乐 题目描述 五彩斑斓的气球在蓝天下悠然飘荡&#xff0c;轻快的音乐在耳边持续回荡&#xff0c;小朋友们手牵着手一同畅快欢笑。在这样一片安乐祥和的氛围下&#xff0c;六一来了。 今天是六一儿童节&#xff0c;小蓝老师为了让大家在节…...

服务器硬防的应用场景都有哪些?

服务器硬防是指一种通过硬件设备层面的安全措施来防御服务器系统受到网络攻击的方式&#xff0c;避免服务器受到各种恶意攻击和网络威胁&#xff0c;那么&#xff0c;服务器硬防通常都会应用在哪些场景当中呢&#xff1f; 硬防服务器中一般会配备入侵检测系统和预防系统&#x…...

Neo4j 集群管理:原理、技术与最佳实践深度解析

Neo4j 的集群技术是其企业级高可用性、可扩展性和容错能力的核心。通过深入分析官方文档,本文将系统阐述其集群管理的核心原理、关键技术、实用技巧和行业最佳实践。 Neo4j 的 Causal Clustering 架构提供了一个强大而灵活的基石,用于构建高可用、可扩展且一致的图数据库服务…...

WEB3全栈开发——面试专业技能点P2智能合约开发(Solidity)

一、Solidity合约开发 下面是 Solidity 合约开发 的概念、代码示例及讲解&#xff0c;适合用作学习或写简历项目背景说明。 &#x1f9e0; 一、概念简介&#xff1a;Solidity 合约开发 Solidity 是一种专门为 以太坊&#xff08;Ethereum&#xff09;平台编写智能合约的高级编…...

JDK 17 新特性

#JDK 17 新特性 /**************** 文本块 *****************/ python/scala中早就支持&#xff0c;不稀奇 String json “”" { “name”: “Java”, “version”: 17 } “”"; /**************** Switch 语句 -> 表达式 *****************/ 挺好的&#xff…...

PAN/FPN

import torch import torch.nn as nn import torch.nn.functional as F import mathclass LowResQueryHighResKVAttention(nn.Module):"""方案 1: 低分辨率特征 (Query) 查询高分辨率特征 (Key, Value).输出分辨率与低分辨率输入相同。"""def __…...