技能学习:学习使用Node.js + Vue.js,开发前端全栈网站-14-3.nginx配置web服务器并安装网站环境

本文涉及的产品
云数据库 MongoDB,独享型 2核8GB
推荐场景:
构建全方位客户视图
.cn 域名,1个 12个月
简介: 每次我们登录服务器都需要到登录阿里云进入实例,而为了更方便且一些后续工作的执行,现在下载git bash进行ssh命令远程连接服务器。
1.安装git bash

每次我们登录服务器都需要到登录阿里云进入实例,而为了更方便且一些后续工作的执行,现在下载git bash进行ssh命令远程连接服务器。
据说mac系统自带ssh,大家自行终端测试,没有的话跟我到git官网下载。
在这里插入图片描述
由于我之前下载过,就不跟大家一起下载了,基本上就是无脑安装,最后一步三个选项中问是否加入path,基本上我们如果没有手动终端启动bash经验的话选择第一个就好,否则启动会很慢。其他具体git操作大家自行学习。
在这里插入图片描述
下载完成之后进入安装好的文件夹,启动git-bash。
在这里插入图片描述

2.使用git bash

进入终端页面后,开始使用ssh命令连接服务器。

ssh root@你的域名

在这里插入图片描述
在这里插入图片描述
此时与上节成功进入服务器显示的信息相同。由于上节已经解析了域名,所以ssh登录时输入域名也可以连接服务器,如果没有解析域名则需要@你的服务器ip地址。

3.安装nginx

检查此时服务器是否有nginx:
使用apt命令,apt命令是ubuntu服务器专用命令,如果是centOS就使用yarn。效果一样。

apt show nginx

在这里插入图片描述
显示没有安装nginx,此时更新一下ubuntu服务器软件包:
使用apt命令更新软件包,由于阿里云使用了阿里云的镜像,所以速度比较快。

apt update

在这里插入图片描述
一大片更新之后我们再次检查是否有nginx:
在这里插入图片描述
此时我们正式部署安装nginx:

// apt命令 安装 nginx 提前说yes,没有-y的话会问是否安装
apt install nginx -y

在这里插入图片描述
一顿安装,并开启80端口就可以在网上输入域名访问服务器了。

4.开启80端口

安全组,点击配置规则:
在这里插入图片描述
快速添加,80端口是常用端口,开启后才可通过http访问。
在这里插入图片描述
在这里插入图片描述
点击确定,80端口已经添加。
在这里插入图片描述
此时就可以访问网站了:
在这里插入图片描述

5.配置服务器环境所需工具

(1)MongoDB数据库安装和配置
与安装nginx相同,先查看此时环境中有没有安装我们需要的MongoDB数据库:

apt show mongodb

此时查询到mongodb包,版本号为3.6.9,但这时查询到的是客户端,我们需要使用其服务端。
在这里插入图片描述

apt show mongodb-server

在这里插入图片描述
安装mongodb-server

apt install mongodb-server -y

一顿下载完成后就会自动启动,此时我们输入命令mongo进入数据库:
在这里插入图片描述
此时我们就可以使用show命令查看非可视化的命令行数据库信息,多数情况我们不用管理mongo数据库,此时就是测试是否安装好mongodb:
在这里插入图片描述
(2)安装node.js

apt install nodejs -y

安装完成后查看下载nodejs的版本:

node -v

在这里插入图片描述
之后可以使用包命令对node 进行升级,升级到我们本地环境中使用的node版本即可。
(3)安装npm并配置淘宝镜像
检查安装node时有没有同时安装npm

npm -v

在这里插入图片描述
可以看到这种安装方式并没有连带安装npm,所以同样apt命令安装npm:

apt install npm -t

下载完成后检查npm版本:
在这里插入图片描述
下载过程有点慢,先配置淘宝镜像,之后再安装nrm方便对npm版本进行切换。
配置淘宝镜像:

npm config set registry https://registry.npm.taobao.org

在这里插入图片描述
回车没反应,配置好了。
接下来全局安装nrm,切换npm版本的包:

npm i -g nrm

在这里插入图片描述
有了nrm我们还可以在淘宝镜像npm和普通npm之间切换,有的包在淘宝镜像无法下载,就只能切换到普通npm试试,实在不行再安装cnpm试一下。
nrm命令:

// 查看当前npm
nrm current
// 使用普通npm
nrm use npm
// 使用淘宝镜像npm
nrm use taobao

在这里插入图片描述
此时我们升级nodejs
全局安装n包,用于升级nodejs本身

npm i n -g

在这里插入图片描述
使用n命令查看包命令及内容:
在这里插入图片描述
我们可以直接升级使用最新版本nodejs:

n latest

在这里插入图片描述
此时版本号为16.4.2,到本地环境查询一下当前版本号:
在这里插入图片描述
本地环境使用的是16.4.0,版本相差不大应该不影响,但我们试着将服务器node环境改到16.4.0:

n install 16.4.0

在这里插入图片描述
切换完成,此时查看node版本号,依旧是最初的10.19.0,是因为环境问题:
在这里插入图片描述
我们重新进入服务器即可更新:
在这里插入图片描述
此时node环境安装完成。
(4)安装git,配置ssh-key
在上传网站文件到服务器时有很多方法,其中一种就是通过git命令直接将文件更新到服务器中,其过程比ftp更加快速便捷,还可以通过git库或码云时刻整理网站文件。
使用过程为: 1.将本地代码上传至git,2.在服务器上从git拉取代码。 到后期可以通过hook配置直接让服务器实时拉取git代码。

apt install git -y

安装完成后就可以使用git命令了:
在这里插入图片描述
第二步配置ssh-key,作用是在本地、git和服务器之间实现上传与拉取的口令。

// ssh-keygenerate生成命令
ssh-keygen

在这里插入图片描述
根据地址使用cat命令查询ssh-key:

cat /root/.ssh/id_rsa.pub

在这里插入图片描述
复制一大串密钥,记录下来,之后连接都需要这串密钥。

到此服务器环境基本设置好。
下篇文章我们学习使用git实现代码的拉取

相关文章
|
20天前
|
数据库 开发者 Python
web应用开发
【9月更文挑战第1天】web应用开发
34 1
|
8天前
|
数据可视化 图形学 UED
只需四步,轻松开发三维模型Web应用
为了让用户更方便地应用三维模型,阿里云DataV提供了一套完整的三维模型Web模型开发方案,包括三维模型托管、应用开发、交互开发、应用分发等完整功能。只需69.3元/年,就能体验三维模型Web应用开发功能!
32 8
只需四步,轻松开发三维模型Web应用
|
17天前
|
数据采集 Java 数据挖掘
Java IO异常处理:在Web爬虫开发中的实践
Java IO异常处理:在Web爬虫开发中的实践
|
16天前
|
负载均衡 网络协议 应用服务中间件
web群集--rocky9.2源码部署nginx1.24的详细过程
Nginx 是一款由 Igor Sysoev 开发的开源高性能 HTTP 服务器和反向代理服务器,自 2004 年发布以来,以其高效、稳定和灵活的特点迅速成为许多网站和应用的首选。本文详细介绍了 Nginx 的核心概念、工作原理及常见使用场景,涵盖高并发处理、反向代理、负载均衡、低内存占用等特点,并提供了安装配置教程,适合开发者参考学习。
|
18天前
|
前端开发 JavaScript 持续交付
Web应用开发的方法
Web应用开发的方法
13 1
|
18天前
|
前端开发 JavaScript 持续交付
web应用开发
web应用开发
23 1
|
20天前
|
Web App开发 数据采集 iOS开发
「Python+Dash快速web应用开发」
这是「Python+Dash快速web应用开发」系列教程的第十六期,本期将介绍如何在Dash应用中实现多页面路由功能。通过使用`Location()`组件监听URL变化,并结合回调函数动态渲染不同页面内容,使应用更加模块化和易用。教程包括基础用法、页面重定向及无缝跳转等技巧,并通过实例演示如何构建个人博客网站。
25 2
WK
|
17天前
|
数据采集 API 开发者
很少有人用python开发web???
Python 是一种流行且广泛使用的编程语言,尤其在 Web 开发领域。它凭借简洁的语法、丰富的框架(如 Django 和 Flask)、强大的库支持及活跃的社区,成为许多开发者和企业的首选。Python 的易学性、高效性及广泛的应用场景(包括 Web API、微服务和数据分析等)使其在 Web 开发中占据重要地位,并将持续发挥更大作用。
WK
36 0
|
21天前
|
数据库 开发者 Java
数据战争:Hibernate的乐观与悲观锁之争,谁将主宰并发控制的王座?
【8月更文挑战第31天】在软件开发中,数据一致性至关重要,尤其是在多用户并发访问环境下。Hibernate 作为 Java 社区常用的 ORM 框架,提供了乐观锁和悲观锁机制来处理并发问题。乐观锁假设数据不易冲突,通过版本号字段 (`@Version`) 实现;悲观锁则假定数据易冲突,在读取时即加锁。选择哪种锁取决于具体场景:乐观锁适合读多写少的情况,减少锁开销;悲观锁适合写操作频繁的场景,避免数据冲突。正确应用这些机制可提升应用程序的健壮性和效率。
27 0
|
21天前
|
Java 测试技术 容器
从零到英雄:Struts 2 最佳实践——你的Web应用开发超级变身指南!
【8月更文挑战第31天】《Struts 2 最佳实践:从设计到部署的全流程指南》深入介绍如何利用 Struts 2 框架从项目设计到部署的全流程。从初始化配置到采用 MVC 设计模式,再到性能优化与测试,本书详细讲解了如何构建高效、稳定的 Web 应用。通过最佳实践和代码示例,帮助读者掌握 Struts 2 的核心功能,并确保应用的安全性和可维护性。无论是在项目初期还是后期运维,本书都是不可或缺的参考指南。
29 0