C++从零开始websevere服务器从搭建到上线|使用华为云服务器进行项目部署

文章目录

  • 公网IP和私有IP地址
    • 公网IP
    • 私有IP地址
    • 为什么我们需要两个IP地址呢
  • 云服务器设置
    • 防火墙配置基础
    • 配置云服务器防火墙
    • 配置云服务器安全组
  • 总结

问题背景
关于使用华为云服务器进行项目部署,25届C++秋招选手,刚写完一个websever项目,想着部署一下,我这里购买的是华为云服务器2内核2G 4M带宽。
比如我想用:xxx.xxx.xxx.xxx:10000来访问部署在云服务器上的websever程序

首先先介绍一点基础知识。

公网IP和私有IP地址

公网IP

公网IP地址是在整个互联网中唯一的地址,由互联网服务提供商(ISP)分配给用户,使得设备能够直接与互联网上的其他设备通信。
很明显,如果想要在云服务器上部署我们的web项目,肯定是用我们服务器的公网IP来访问的。

我们通过 curl ifconfig.me可以获取当前公网IP地址

私有IP地址

私有IP地址是为组织内部网络(如家庭、学校或公司的局域网)保留的非路由地址。

私有IP地址只在局域网内部使用,不会被互联网路由器识别和路由。

它们有特定的范围,由互联网工程任务组(IETF)定义,如192.168.x.x, 10.x.x.x, 172.16.x.x到172.31.x.x。

局域网内的设备通过私有IP地址进行通信,当需要访问互联网时,会通过网络地址转换(NAT)技术将私有IP地址转换为公网IP地址。

使用ifconfig命令可以查看本机各个网卡的私有IP

为什么我们需要两个IP地址呢

  1. 内部网络通信:私有IP地址允许电脑在局域网内部进行通信,这对于家庭网络、办公网络等内部设备间的连接是必要的。

  2. 互联网访问:公网IP地址允许电脑通过互联网服务提供商连接到全球互联网,进行数据传输和通信。

  3. NAT技术:在大多数家庭和小型办公室网络中,一个公网IP地址通过NAT技术被多个私有IP地址共享。这样,多台设备可以同时使用一个公网IP地址访问互联网,而无需为每台设备分配一个单独的公网IP地址。

  4. 成本效益:由于公网IP地址的数量有限,且可能需要额外费用,因此使用私有IP地址可以节省成本,同时满足内部网络的需求。

  5. 安全性:私有IP地址不直接暴露在互联网上,通过NAT技术增加了一层安全防护,减少了直接遭受外部网络攻击的风险。

云服务器设置

防火墙配置基础

  • 查看firewall服务状态
systemctl status firewalld
  • 查看firewall的状态
firewall-cmd --state
  • 开启、重启、关闭、firewall.service服务
# 开启
service firewalld start
# 重启
service firewalld restart
# 关闭
service firewalld stop
  • 查询、开放、关闭端口
# 查询端口是否开放
firewall-cmd --query-port=8080/tcp
# 开放80端口
firewall-cmd --permanent --add-port=80/tcp
# 移除端口
firewall-cmd --permanent --remove-port=8080/tcp
# 重启防火墙(修改配置后要重启防火墙)
firewall-cmd --reload
# 参数解释
1. firewall-cmd:是Linux提供的操作firewall的一个工具
2. --permanent:表示设置为持久
3. --add-port:标识添加的端口

配置云服务器防火墙

  1. 查看防火墙已开放的端口
sudo firewall-cmd --list-all

输出如下:

public (active)target: defaulticmp-block-inversion: nointerfaces: eth0sources: services: dhcpv6-client sshports: 8080/tcp 80/tcp 3306/tcp protocols: forward: yesmasquerade: noforward-ports: source-ports: icmp-blocks: rich rules: 

可以看到我们并没有开放10000的端口,现在我们需要添加该端口
2. 开放10000端口

firewall-cmd --permanent --add-port=10000/tcp

然后重启防火墙

firewall-cmd --reload

这样我们就把防火墙愉快得配置好啦

配置云服务器安全组

具体可以查看文章:
在云服务器上搭建网站对外提供Web服务
在华为官方给的实例下配置安全组,开放我们的10000端口就好了。
至于配置安全组的入口自己找找就好了。
请添加图片描述
注意:源地址0.0.0.0/0表示所有IP都可通过该端口连接web服务器


总结

总而言之,无法访问最主要的原因就是防火墙的端口未开放,然后就是设置华为云服务器的安全组,这些整完,只要你服务器源代码没问题,肯定是能成功的。

综上,我们再通过浏览器访问IP:port就可以看到我们服务端的界面啦

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/642205.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

8. 中断下半页 与 延迟处理

目录 中断下半页 软中断 Tasklet Work Queues 回顾一下 Reference (偷个懒:这里不将怎么用hhh) 我们现在开始考虑中断的部分了。我们直到处理设备(不管是CPU自己的还是外部设备的)的中断是操作系统的一个重要任务。 我们说中断是异步的…

柱状图展示异步统计数据

PC端 APP端 Controller层 package com.cnpc.dj.party.controller;import com.alibaba.fastjson.JSONObject; import com.cnpc.dj.common.JsonResult; import com.cnpc.dj.common.context.BaseContextHandler; import com.cnpc.dj.common.utils.DateUtils; import com.cnpc.dj.…

js的算法-交换排序(快速排序)

快速排序 基本思想 快速排序的基本思想是基于分治法的:在待排序表L【1...n】中任意取一个元素p 作为枢轴(或基准,通常取首元素)。通过一趟排序将待排序表划分为独立的两部分L【1...k-1】和L【k1...n】;这样的话,L【1…

【视觉论文】VIT - Vision Transformers

论文:AN IMAGE IS WORTH 16X16 WORDS: TRANSFORMERS FOR IMAGE RECOGNITION AT SCALE 链接:https://arxiv.org/abs/2010.11929 很多人博主都写烂了的论文,我到现在才真正翻开论文看,21年的工作,正好是刚毕业那年&…

分析 MyBatis/MyBatis-Plus 慢 SQL 的分析组件 --SQL 慢镜️‍♀️

大家好!我是聪ζ🌱我做了一个分析 MyBatis/MyBatis-Plus 慢 SQL 的分析组件 --SQL 慢镜🕵️‍♀️ GitHub仓库地址🚀: https://github.com/lhccong/sql-slow-mirror 点点 star 我的朋友们✨ 背景🧊: 大家…

使用autocannon和0x对网站进行性能分析(node)

npm i autocannon -g autocannon -c 100 -d 5 -p 10 http://localhost:3000/ 0x -o app.js 火焰图是根据程序的栈的状态对出现函数的采样数据统计而得,宽度代表函数运行一次所需的时长、高度代表栈的层数、颜色深度代表函数在采样中出现的频率,因此宽度…

Python-GEE遥感云大数据分析、管理与可视化

原文链接:Python-GEE遥感云大数据分析、管理与可视化https://mp.weixin.qq.com/s?__bizMzUzNTczMDMxMg&mid2247601238&idx2&sn6b0557cf61451eaff65f025d648da869&chksmfa820db1cdf584a76de953b96519704177e6206d4ecd47a2f2fabbcac2f7ea619b0bce184…

标准版/开源版 移动端新增页面使用文档

在标准版开发的实际使用中,随着用户移动端的产品和信息内容不断增多,新增页面来展示对应的产品详情、模块等内容。针对一些概念或者步骤较多的内容,可以新增子页面构建多级模块结构,帮助用户快速定位。 下面就如何新增页面做一讲…

2024深圳杯数学建模挑战赛B题:批量工件并行切割下料问题思路代码成品论文分析

更新完整代码和成品完整论文 《2024深圳杯&东三省数学建模思路代码成品论文》↓↓↓ https://www.yuque.com/u42168770/qv6z0d/zx70edxvbv7rheu7?singleDoc# 问题重述 深圳杯数学建模挑战赛2024B题:批量工件并行切割下料问题 板材切割下料是工程机械领域重要…

qmt教程1---qmt安装,提供下载链接

以前写的qmt不太完善现在重新好好的学习一下qmt,重新封装qmt,使用方便 1第一步下载qmt 点击安装 下一步 下一步 默认路径,安装完成 2登录qmt,选择行情加交易,选择极简模式 登录情况 我把qmt上线了 比如我们获取一分钟…

利用ollama和open-webui本地部署通义千问Qwen1.5-7B-Chat模型

目录 1 安装ollama 2 安装open-webui 2.1 镜像下载 3 配置ollama的模型转换工具环境 3.1 下载ollama源码 3.2 下载ollama子模块 3.3 创建ollama虚拟环境 3.4 安装依赖 3.5 编译量化工具 7 创建ollama模型 8 运行模型 参考文献: 1 安装ollama curl -fsSL …

算法训练营day15

一、层序遍历 参考链接7.2 二叉树遍历 - Hello 算法 (hello-algo.com) 层序遍历本质上属于广度优先遍历,也称广度优先搜索, BFS通常借助队列的先入先出的特性实现 参考链接102. 二叉树的层序遍历 - 力扣(LeetCode) 像这种较为…