基于Linux的Nginx安装

简介: 基于Linux的Nginx安装

基于Linux的Nginx安装

1、Nginx用户设置

1.1 创建新用户(注意权限问题:切换为root用户)

su root

1.2 添加新用户nginx,并设置相关信息(一直回车默认即可)

adduser nginx

1.3 退出当前用户,登录nginx用户(直接在Ubuntu中切换用户即可)

1.4 以管理员身份(root用户)执行visudo指令,来修改配置

su root
visudo

visudo打开的是/etc/sudoers文件,修改该文件,添加下面这一行:

nginx ALL=(ALL:ALL) ALL

CTRL + O(再按ENTER)保存,CTRL + X退出。

1.5 退出root用户

exit

2、准备服务器系统

2.1 确认Ubuntu的内核

准备一个内核为2.6及以上版本的操作系统,因为Linux2.6及以上才支持epoll,而Nginx需要解决高并发压力问题需要用到epoll,所以我们需要有这样的版本要求。

我们可以使用uname -a命令来查询Linux的内核版本:

uname -a

2.2 确保Ubuntu能联网

ping www.baidu.com

2.3 确认关闭防火墙

将防火墙关掉,可以省掉后面Nginx学习过程中的诸多问题。

查看防火墙状态:

systemctl status firewalld

关闭防火墙(暂时,系统重启后,防火墙将重新打开)

systemctl stop firewalld

重启防火墙

systemctl restart firewalld

关闭防火墙(永久,系统重启后,防火墙依然关闭)

systemctl disable firewalld

2.4 确认停用selinux

selinux(security-enhanced linux),美国安全局对于强制访问控制的实现,在Linux 2.6内核以后的版本中,selinux已经成功成为内核的一部分。可以说,selinux是Linux史上最杰出的新安全子系统之一。

虽然有了selinux,我们的系统会更安全,但是对于学习Nginx会多很多设置,所以建议关闭。

借助以下指令查看selinux状态:

sestatus

如果查看不是disabled状态,可以通过修改配置文件来进行设置,修改SELINUX=disable,重启系统即可生效:

sudo vi /etc/selinux/config

3、Nginx安装

Nginx的安装方式有两种分别是:

通过Nginx源码
    通过Nginx源码简单安装(1)
    通过Nginx源码复杂安装(3)
通过yum安装(2)Ubuntu apt-get即可

如果通过Nginx源码安装需要提前准备的内容:

3.1 gcc编译器

Nginx是使用C语言编写的程序,因此想要运行Nginx就需要安装一个编译工具。gcc就是一个开源的编译器集合,用于处理各种各样的语言,其中就包含了C语言。

gcc安装:

sudo apt-get install gcc

查看是否安装成功:

gcc --version

3.2 pcre

Nginx在编译过程中需要使用到pcre库(Perl Compatible Regular Expression 兼容正则表达式库),因为在Nginx的Rewrite模块和http核心模块都会使用到pcre正则表达式语法。

pcre安装:

sudo apt-get install libpcre3 libpcre3-dev

查看是否安装成功:

pcre-config --version

3.3 zlib

zlib库提供了开发人员的压缩算法,在Nginx的各个模块中需要使用gzip压缩,所以我们也需要提前安装其库及源代码zlib和zlib-devel。

zlib安装:

sudo apt-get install zlib1g zlib1g-dev

3.4 OpenSSL

OpenSSL是一个开放源代码的软件库包,应用程序可以使用这个包进行安全通信,并且避免被窃听。

SSL:Secure Sockets Layer安全套接协议的缩写,可以在Internet上提供秘密性传输,其目标是保证两个应用间通信的保密性和可靠性。在Nginx中,如果服务器需要提供安全网页时,就需要用到OpenSSL库,所以我们需要对OpenSSL的库文件及它的开发安装包进行一个安装。

OpenSSL安装:

sudo apt-get install openssl libssl-dev

4、Nginx源码简单安装

Nginx官方网站:http://nginx.org/en/download.html

4.1 使用wget命令下载

wget http://nginx.org/download/nginx-1.22.0.tar.gz

4.2 对资源进行包管理

mkdir -p nginx/core
mv nginx-1.22.0.tar.gz nginx/core

4.3 解压缩

cd nginx/core
tar -xzf nginx-1.22.0.tar.gz
mv nginx-1.22.0 nginx # 改名

4.4 进入资源文件,发现configure

cd nginx
./configure

4.5 编译 && 安装

make && make install

没有权限可以加sudo

4.6 启动Nginx

cd sbin
./nginx

会报错,参考博客:Nginx启动报错:could not open error log file: open() “/usr/local/nginx/logs/error.log” failed

4.7 切换root用户

su root

4.8 浏览器查看

在浏览器中输入IP地址:http://192.168.0.163(每个人的不一样)

4.9 退出nginx

./nginx -s stop


相关实践学习
CentOS 7迁移Anolis OS 7
龙蜥操作系统Anolis OS的体验。Anolis OS 7生态上和依赖管理上保持跟CentOS 7.x兼容,一键式迁移脚本centos2anolis.py。本文为您介绍如何通过AOMS迁移工具实现CentOS 7.x到Anolis OS 7的迁移。
目录
相关文章
|
6天前
|
Ubuntu 网络协议 Linux
【附安装包】CentOS7(Linux)详细安装教程(手把手图文详解版)
【附安装包】CentOS7(Linux)详细安装教程(手把手图文详解版)
47 2
|
3天前
|
应用服务中间件 PHP nginx
Mac安装Nginx
Mac安装Nginx
10 2
Mac安装Nginx
|
3天前
|
Linux C语言
成功解决 在Linux CentOS 7 中安装gcc
这篇文章介绍了如何在Linux CentOS 7系统中安装gcc (g++) 8工具集。由于CentOS 7默认的gcc版本是4.8,而这个版本与Qt 5.14、Qt 5.15或更高版本不兼容,可能会导致编译时出现系统头文件错误。文章中提到,即使在项目配置中添加了`CONFIG+=c++11`,如果仍然报错,那么很可能是gcc版本的问题。为了解决这个问题,文章提供了使用CentOS的Software Collections (scl)来安装更新版本的gcc的步骤。
成功解决 在Linux CentOS 7 中安装gcc
|
3天前
|
关系型数据库 Java MySQL
Linux安装JDK1.8 & tomcat & MariaDB(MySQL删减版)
本教程提供了在Linux环境下安装JDK1.8、Tomcat和MariaDB的详细步骤。这三个组件的组合为Java Web开发和部署提供了一个强大的基础。通过遵循这些简单的指导步骤,您可以轻松建立起一个稳定、高效的开发和部署环境。希望这个指导对您的开发工作有所帮助。
21 8
|
5天前
|
Linux Python
Linux 升级安装 Python 3
Linux 升级安装 Python 3
11 2
|
4天前
|
Linux 网络安全 Python
Linux离线安装Python时ssh和hashlib死活安装不上的解决方案
本文提供了Linux环境下离线安装Python时遇到的"ImportError: No module named _ssl"和"ERROR:root:code for hash md5|sha1|sha224|sha256|sha384|sha512 was not found"两个问题的解决方案,通过设置OpenSSL环境变量和编辑Python源码配置文件来解决。
9 1
|
4天前
|
应用服务中间件 Linux nginx
在CentOS上使用源码包安装Nginx、以及手动启动Nginx的步骤过程
这篇文章介绍了在CentOS系统上使用Nginx源码包进行安装和配置的详细步骤,包括源码包的获取、解压、配置、编译、安装、启动验证以及注意事项。
18 0
在CentOS上使用源码包安装Nginx、以及手动启动Nginx的步骤过程
|
4天前
|
存储 NoSQL Java
使用redis进行手机验证码的验证、每天只能发送三次验证码 (redis安装在虚拟机linux系统中)
该博客文章展示了如何在Linux虚拟机上使用Redis和Jedis客户端实现手机验证码的验证功能,包括验证码的生成、存储、验证以及限制每天发送次数的逻辑,并提供了测试结果截图。
使用redis进行手机验证码的验证、每天只能发送三次验证码 (redis安装在虚拟机linux系统中)
|
4天前
|
Linux
虚拟机安装Linux系统的网络配置
该博客文章提供了解决虚拟机中Linux系统网络问题的多种方法,包括重置网络服务、修改网络配置文件、使用不同网络模式等,以确保虚拟机能够成功连接到网络。
虚拟机安装Linux系统的网络配置
|
7天前
|
Linux Go
Linux——windows10下的Ubuntu18.04安装并配置go环境
Linux——windows10下的Ubuntu18.04安装并配置go环境
19 1

热门文章

最新文章