前言

参考大佬文章并在基础上做了点修改,发篇文章记录下 防止下次遇到。
参考文章:Ubuntu 系统下安装 Nginx

一、安装包下载

下载地址:https://nginx.org/download/

我下载的是nginx-1.18.0.tar.gz

二、上传服务器并解压缩

tar下载及命令参考文章:Ubuntu 常用命令、docker 常用命令、unzip常用命令、tar常用命令

tar -zxvf nginx-1.18.0.tar.gz

三、依赖配置安装

sudo apt install gcc make libpcre3-dev zlib1g-dev openssl libssl-dev


操作命令的时候如果报下图的错,就执行sudo apt-get update命令

四、生成编译脚本

先确保:

1.确保nginx文件夹有权限,执行不了就是因为没有权限

2.查看是否有这个文件夹,没有就新建/usr/local/nginx (后续静态文件、配置文件、日志都在这个目录里有可以更改)

进入nginx目录下(解压后的nginx内)操作

./configure --prefix=/usr/local/nginx --with-http_ssl_module

五、编译

make

六、查看是否编译完成

ls -l objs/

七、开始安装

make install

报错就加sudo

八、查看是否安装成功

ls /usr/local/nginx
ls /usr/local/nginx/sbin
sudo /usr/local/nginx/sbin/nginx -t

九、设置为开机自启动

1.创建 nginx.service 文件

sudo touch nginx.service

2.将以下内容粘贴到文件中

Description=nginx - high performance web server
After=network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s stop
[Install]
WantedBy=multi-user.target

3.将 nginx.service 放入 /etc/systemd/system/ 下

sudo cp nginx.service /etc/systemd/system

4.并授权

sudo chmod 777 nginx.service

5.配置重新加载

systemctl daemon-reload

6.开启Nginx开机自启服务

systemctl enable nginx.service

7.启动Nginx

systemctl start nginx.service

8.查看服务状态

systemctl status nginx.service


此时访问localhost就能看到页面了

️️️若发现以下错误,这是因为 80 端口已经被其他进行占用导致 Nginx 无法绑定到 80 端口上,可尝试查询端口占用进程并终止该进程。


9.可能用到的其他命令

停止nginx

systemctl stop nginx.service

重启nginx

systemctl restart nginx.service

查看nginx 使用的进程

ps aux |grep nginx


修改nginx 使用的端口号pid即修改/usr/local/nginx/logs下的nginx.pid

10.防火墙相关命令

检查防火墙状态,如果防火墙已启用可以看到开放端口列表

sudo ufw status

如果显示 Status: inactive,说明防火墙未启用

启用防火墙(如果未启用)

sudo ufw enable

重启防火墙

sudo ufw reload

开放指定端口

sudo ufw allow 8080/tcp

下班~

Ubuntu 20.04 中安装 Nginx (通过传包编译的方式)、开启关闭防火墙、开放端口号的更多相关文章

  1. Ubuntu 16.04 LTS 安装 Nginx/PHP 5.6/MySQL 5.7 (LNMP) 与Laravel

    Ubuntu 16.04 LTS 安装 Nginx/PHP 5.6/MySQL 5.7 (LNMP) 与Laravel 1.MySQL安装[安装 MariaDB]MariaDB是MySQL的一个分支首 ...

  2. 在 Ubuntu 16.04 中安装支持 CPU 和 GPU 的 Google TensorFlow 神经网络软件

    TensorFlow 是用于机器学习任务的开源软件.它的创建者 Google 希望提供一个强大的工具以帮助开发者探索和建立基于机器学习的应用,所以他们在去年作为开源项目发布了它.TensorFlow ...

  3. Ubuntu 20.04上安装MySQL教程,ubuntu安装mysql

    在Ubuntu 20.04上安装MySQL教程 先决条件 确保您以具有sudo特权的用户身份登录. 在Ubuntu上安装MySQL 在撰写本文时,Ubuntu存储库中可用的MySQL的最新版本是MyS ...

  4. Ubuntu 14.04中安装最新版Eclipse

    Ubuntu 14.04中安装最新版Eclipse 来源:Linux社区    作者:Linux 1.安装OpenJDK Java 7 如果你的系统中没有安装Java,我们需要按照如下步骤事先安装好 ...

  5. 如何在ubuntu 12.04 中安装经典的 GNOME桌面

    这次介绍的是如何在ubuntu 12.04 中安装经典的 GNOME桌面,默认的 Ubuntu 12.04 默认unity桌面,一些用户不喜欢 Unity 桌面,所以想找回昔日的经典Gnome桌面. ...

  6. 如何在Ubuntu 18.04中安装VMware Workstation Player

    参考链接 如何在Ubuntu 18.04中安装VMware Workstation Player https://www.sysgeek.cn/ubuntu-18-04-install-vmware- ...

  7. 怎样在Ubuntu 14.04中安装Java(转)

    想知道如何在Ubuntu 14.04中安装Java?安装Java肯定是安装Ubuntu 14.04后首先要做的几件事情之一(见http://www.linuxidc.com/Linux/2014-04 ...

  8. Ubuntu 20.04 版本安装

    Ubuntu 20.04 版本安装 安装步骤 首先创建好Ubuntu 20.04虚拟机 等待系统检查完整性 选择语言 选择不更新,回车确定 键盘语言默认即可 网卡IP配置 设置代理服务器 设置源 自定 ...

  9. Ubuntu 20.04.1 安装软件和系统配置脚本

    #!/bin/bash # https://launchpad.net/ubuntu # https://www.easyicon.net # https://download-chromium.ap ...

  10. Ubuntu 20.04 Docker 安装并配置

    前言 Docker 的使用能极大地方便我们的开发,减少环境搭建,依赖安装等繁琐且容易出错的问题. 安装 Docker Ubuntu 20.04 官方 apt 源中就有 Docker,我们可以直接通过 ...

随机推荐

  1. ETL数据集成丨将DB2数据同步至Postgres数仓实践

    随着企业数字化转型的加速,数据已成为企业的重要资产.为了更好地挖掘数据价值,企业纷纷建立自己的数据仓库,以便于数据分析和决策.在众多数据库中,DB2和Postgres作为两款备受欢迎的数据库,如何实现 ...

  2. FreeSwitch: esl 调用lua动态传参&日志查看

    lua脚本在执行过程中,可动态接收参数,这样可以让系统更灵活,以上节的自动外呼为例,callout.lua改成下面这样: -- 主叫 local callernum = argv[1]; -- 被叫 ...

  3. 【原创】k8s 微服务滚动发布(服务持续可用)实践笔记

    背景      对于业务和产品来讲,随时都有紧急小版本功能上线,对于研发人员来讲,线上如果有一些紧急的bug,都需要随时发版修正:而对于产品使用用户来讲,任何的功能和版本发布,要尽可能对用户无感知. ...

  4. Golang 性能分析神器 pprof 详解与实践(图文教程)

    一.简介 pprof(性能剖析工具)是 Go 语言标准库提供的用于 go 程序性能分析的工具.可以帮助你分析程序在 CPU使用率.内存堆栈分配.内存占用.协程.锁等方面的表现并且生成相应的性能分析报告 ...

  5. AI智能体时代,看华为云AI原生应用引擎2.0——Versatile如何脱颖而出,面向千行万业,打造最佳企业Agent平台

    ​​本文分享自华为云社区<AI智能体时代,看华为云AI原生应用引擎2.0--Versatile如何脱颖而出,面向千行万业,打造最佳企业Agent平台>,作者:开天aPaaS小助手Tracy ...

  6. 「模块化安装」,定义你自己的CloudQuery

    众所周知,「用户体验」除了在UI上的高互动性.操作便捷性之外,更关键的是系统的性能体验.而性能的决定参数是系统吞吐量和响应速度.在 PC 机时代我们往往通过提升系统的硬件来强行拉高系统响应水平,但硬件 ...

  7. 服务器安装多个Tomcat

    服务器安装多个Tomcat 因为申请了一个域名,然后想设置一个二级域名,让不同的二级域名访问到不同的项目,例如blog.booleandev.xyz访问到博客项目,www.booleandev.xyz ...

  8. gif动态图片软件下载

    GIF片制作软件是一类可以轻松的将数张静态的BMP.JPG.ICO格式的图片连在一起制作成GIF动态图片, GIF动态图因有着很好的展现力所以深受网友的喜欢,平时我们逛论坛.百度贴吧.新浪微博.qq空 ...

  9. 3、rt-thread学习-编译项目-使用scons自动生成工程

    1.编译项目,主要用到env集成的构建工具scons,scons有两个很实用的功能. 第一个功能是,scons可以通过读取rt-thread的配置文件,也就 是rtconfig.h文件,自动生成iar ...

  10. JavaSE-面向对象和面向过程

    面向对象和面向过程 Java是一种面向对象的编程语言,它支持面向对象编程(OOP)和面向过程编程两种编程范式.下面将分别解释这两种编程范式,并说明它们的区别. 面向过程编程(Procedural Pr ...