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

linux系统装载nginx的笔记

作为一个前端开发,自己部署一个前端项目是不是很正常的事情,所以我在这里记录一下自己在linux环境中通过nginx部署前端项目的步骤,方便后面查看。

步骤如下:

1、使用管理员身份进入命令窗口,如果进入时提示,没有管理员权限,可以通过以下命令,获取管理员权限

sudo passwd root
Enter new UNIX password: (在这输入你的密码)
Retype new UNIX password: (确定你输入的密码)
passwd: password updated successfully

以后,如果在想获得root权限,只需进行如下的操作:

su root
Password: (在此输入你上面设置的密码)

2、安装依赖包

以下是在 Linux 系统上进行编译和开发时常用的软件包。这些软件包通常用于编译和构建 C/C++ 程序,特别是涉及到正则表达式、数据压缩、加密和安全等方面的应用。具体作用如下:

- gcc : GNU Compiler Collection,用于编译 C 和 C++ 程序的编译器。

- pcre-devel : PCRE(Perl Compatible Regular Expressions)库的开发包,用于支持正则表达式的处理。

- zlib-devel : zlib 库的开发包,用于数据压缩和解压缩。

- opensslopenssl-devel : OpenSSL 库及其开发包,用于加密和安全通信。

这些软件包通常在开发环境中使用,以支持编译和构建需要这些功能的应用程序。

yum -y install gcc pcre-devel zlib-devel openssl openssl-devel

3、创建nginx所在文件夹并进入

mkdir -p /www/nginx

进入文件夹

cd /www/nginx

4、下载nginx

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

5、解压nginx安装包

tar -xvf nginx-1.21.0.tar.gz

6、进入nginx安装包

cd nginx-1.21.0/

7、配置软件安装路径

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

这个命令是在 Linux 系统上用于配置软件安装路径的常见操作。在这个命令中:

./configure : 这是一个常见的在源代码安装软件时运行的脚本,用于配置软件的编译和安装选项。

--prefix=/usr/local/nginx : 这个参数指定了软件安装的路径,即将要安装的软件将会被安装在 `/usr/local/nginx` 目录下。

通过这个命令,您在准备编译和安装某个软件时,可以指定该软件的安装路径。这样安装后的软件将会被安装到指定的路径下。

8、执行make命令

make 是一个在 Linux 系统上常用的命令,用于根据 Makefile 文件来编译源代码并生成可执行文件。当您在编译软件时,通常会使用 make 命令来执行 Makefile 中定义的编译规则,以生成最终的可执行文件或库文件。 make 命令会根据 Makefile 中的规则来确定需要编译哪些源代码文件,以及如何进行编译和链接操作。

在执行 make 命令之前,通常您需要先运行 ./configure 或者其他配置命令来准备编译环境。一旦配置完成,您可以运行 make 命令来开始编译源代码并生成最终的可执行文件。如果编译过程中遇到任何问题, make 会输出相应的错误信息,帮助您进行调试和修复。

make

9、执行make install命令

make install

make install 是一个在 Linux 系统上常用的命令,用于将编译后的程序安装到系统中。当您使用 make 命令成功编译了软件之后,可以使用 make install 命令将编译生成的可执行文件、库文件或其他相关文件复制到系统的标准安装路径中,以便在系统中使用该软件。

通常, make install 命令会根据 Makefile 中指定的安装路径将文件复制到对应的目录中。这样,您就可以在系统中直接运行或使用这些编译后的程序了。

请注意,在运行 make install 命令之前,请确保您具有足够的权限来将文件复制到系统目录中,通常需要以管理员权限或者使用 sudo 来执行这个命令。

10、配置nginx.conf

10.1 备份nginx配置文件

cp /usr/local/nginx/conf/nginx.conf /usr/local/nginx/conf/nginx.conf.bak

10.2 打开配置文件,修改端口号和本级IP

vi /usr/local/nginx/conf/nginx.conf

修改listen(端口号),server_name修改为服务器IP地址(获取本机IP方式如下)

10.3 获取本机IP的其中一种方式

10.4 进入配置文件的编辑状态

当打开一个文件后,默认进入命令模式。在命令模式下,我们无法修改文本内容。要进入编辑模式,可以按下i键或者a键。i键表示在当前光标位置插入文本,a键表示在当前光标后插入文本。

保存并退出

当完成对文本的修改后,需要将其保存并退出(如果提示是只读文件无法修改,请确认一下是不是管理员权限进入的)。可以使用以下命令:

  :wq

其中,w表示写入(即保存),q表示退出。如果只想退出而不保存,可以使用以下命令:

  :q!

其中,!表示强制退出。

10.5 防火墙添加例外,重启防火墙,查看已经开放的端口

firewall-cmd --zone=public --add-port=80/tcp --permanent

这个命令是用于在 Linux 系统上配置防火墙规则的命令。具体来说:

firewall-cmd : 这是用于配置 firewalld 防火墙的命令。

--zone=public : 指定了要添加规则的防火墙区域,这里是 public 区域。

--add-port=80/tcp : 指定了要添加的端口规则,这里是允许 TCP 协议的 80 端口通过防火墙。

--permanent : 表示这条规则是永久性的,会在防火墙重启后保留。

firewall-cmd --reload

firewall-cmd --reload 是在 Linux 系统上重新加载 firewalld 防火墙配置的命令。当您对防火墙规则进行更改后,可以使用 firewall-cmd --reload 命令来重新加载配置,使新的规则生效,而无需重启防火墙服务。

通过执行这个命令,firewalld 将重新加载最新的配置文件,包括最新添加、删除或修改的防火墙规则,确保系统的防火墙策略得到更新并立即生效。

firewall-cmd --list-ports

firewall-cmd --list-ports 是在 Linux 系统上用于列出防火墙规则中已开放端口的命令。通过运行这个命令,您可以查看当前系统防火墙配置中已经开放的端口列表。

执行这个命令后,系统将列出所有已经在防火墙规则中开放的端口,以便您可以查看哪些端口当前是允许通过防火墙的。

11、启动nginx

11.1 进入nginx的sbin目录

cd /usr/local/nginx/sbin/

11.2 启动nginx

./nginx

运行 ./nginx 命令通常用于启动 Nginx 服务器。当您在 Nginx 的安装目录下执行 ./nginx 命令时,它会尝试启动 Nginx 服务器。请确保在执行该命令之前已经正确配置了 Nginx,并且具有适当的权限来启动服务器。

11.3 查看是否启动完成

ps -ef | grep nginx

ps -ef | grep nginx 是一个在 Linux 系统上查找正在运行的 Nginx 进程的常见命令。这个命令的作用是通过 ps 命令查看当前系统中所有进程的信息,然后通过 grep 命令筛选出包含关键词 “nginx” 的进程信息。

执行这个命令后,系统会列出包含 “nginx” 关键词的进程信息,包括进程号(PID)、运行时间等。这样您可以查看是否有 Nginx 进程正在运行。

出现Welcome to nginx!就说明nginx可以正常使用了

相关文章:

  • IDEA一键备份MySQL数据库(mysqldump版)
  • 树状打印二叉树的类Java、Go、PHP
  • 二叉树的遍历及线索二叉树试题解析
  • 让手机平板成为AI开发利器:AidLux
  • liunx之nginx安装
  • 区块链与智能合约
  • 详细安装步骤:vue.js 三种方式安装(vue-cli)
  • Java之旅:从零到英雄的编程探索
  • ChimeraX - 命令 morph 动态显示多组 PDB 坐标 模拟 MD 状态
  • MNN介绍、安装和编译
  • C++经典面试题目(七)
  • 让浏览器秒变临时记事本
  • 因果推断学习
  • 循序渐进丨MogDB 对 Oracle DBLink兼容性增强
  • GPU从虚拟化迈向池化:趋动OrionX产品的创新之路
  • 《深入 React 技术栈》
  • 2017 年终总结 —— 在路上
  • AWS实战 - 利用IAM对S3做访问控制
  • Cookie 在前端中的实践
  • JavaScript 是如何工作的:WebRTC 和对等网络的机制!
  • JavaScript异步流程控制的前世今生
  • JSONP原理
  • nodejs调试方法
  • Perseus-BERT——业内性能极致优化的BERT训练方案
  • python_bomb----数据类型总结
  • Spring Cloud中负载均衡器概览
  • 番外篇1:在Windows环境下安装JDK
  • 机器学习中为什么要做归一化normalization
  • 开源地图数据可视化库——mapnik
  • 前端相关框架总和
  • 数据结构java版之冒泡排序及优化
  • nb
  • 关于Android全面屏虚拟导航栏的适配总结
  • ​Z时代时尚SUV新宠:起亚赛图斯值不值得年轻人买?
  • !!java web学习笔记(一到五)
  • #stm32驱动外设模块总结w5500模块
  • #每日一题合集#牛客JZ23-JZ33
  • (1综述)从零开始的嵌入式图像图像处理(PI+QT+OpenCV)实战演练
  • (8)STL算法之替换
  • (ZT) 理解系统底层的概念是多么重要(by趋势科技邹飞)
  • (层次遍历)104. 二叉树的最大深度
  • (十三)Java springcloud B2B2C o2o多用户商城 springcloud架构 - SSO单点登录之OAuth2.0 根据token获取用户信息(4)...
  • (原创) cocos2dx使用Curl连接网络(客户端)
  • (原创)boost.property_tree解析xml的帮助类以及中文解析问题的解决
  • (转)Mysql的优化设置
  • (转)ObjectiveC 深浅拷贝学习
  • (转)关于pipe()的详细解析
  • (转载)跟我一起学习VIM - The Life Changing Editor
  • ***测试-HTTP方法
  • .360、.halo勒索病毒的最新威胁:如何恢复您的数据?
  • .aanva
  • .net core控制台应用程序初识
  • .net framework4与其client profile版本的区别
  • .net Stream篇(六)
  • .Net调用Java编写的WebServices返回值为Null的解决方法(SoapUI工具测试有返回值)