Linux centos搭建web服务器

news2025/1/16 5:03:06

文章目录

  • 前言
  • 1. 本地搭建web站点
  • 2. 测试局域网访问
  • 3. 公开本地web网站
    • 3.1 安装cpolar内网穿透
    • 3.2 创建http隧道,指向本地80端口
    • 3.3 配置后台服务
  • 4. 配置固定二级子域名
  • 5. 测试使用固定二级子域名访问本地web站点

前言

在web项目中,部署的web站点需要被外部访问,则需要一个媒介,通过把资源放在这个媒介中,再通过所暴露的端口指向这个站点,当外部访问这个媒介所对应的端口时,媒介指向站点,完成访问,像这种类似的媒介,常用的有tomcat容器、Apache等,这边使用Apache来建搭建。

Apache2 是一种流行的 Web 服务器应用程序,也就是通常所说的运行网站的服务器,目前apache在centos已经改名,叫httpd。

1. 本地搭建web站点

安装httpd,输入命令,出现y/N,输入y

yum install httpd

20221228152325

安装完成查看版本信息,出现以下版本信息表示安装成功

httpd -v

20221228153025

启动服务

service httpd start

20221228153034

2. 测试局域网访问

打开浏览器输入http://192.168.XX.XX ,局域网访问,httpd默认是80端口,访问时候无需加端口

20221228153045

注意,如没有出现这个页面,可能是防火墙问题,输入以下命令可以关闭防火墙(centos8)

systemctl stop firewalld.service

3. 公开本地web网站

由于该站点是在本地设备上,局域网之间可以访问,但是公网环境下无法访问,接下来将web站点发布到公网。

这里使用cpolar内网穿透来实现,创建http隧道,将内网80端口映射到公网上,无需公网IP,无需设置路由器,也无需购买云服务器。

cpolar官网:https://i.cpolar.com/m/4jCo/

3.1 安装cpolar内网穿透

  • cpolar 安装(国内使用)
curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash
  • 或 cpolar短链接安装方式:(国外使用)
curl -sL https://git.io/cpolar | sudo bash
  • 查看版本号,有正常显示版本号即为安装成功
cpolar version
  • token认证
    登录cpolar官网后台,点击左侧的验证,查看自己的认证token,之后将token贴在命令行里
cpolar authtoken xxxxxxx

在这里插入图片描述

  • 简单穿透测试
cpolar http 8080

按ctrl+c退出

  • 向系统添加服务
sudo systemctl enable cpolar
  • 启动cpolar服务
sudo systemctl start cpolar
  • 查看服务状态
sudo systemctl status cpolar

在这里插入图片描述

3.2 创建http隧道,指向本地80端口

cpolar http 80

如下图所示,有生成相应的公网地址,一个http协议,一个为https协议(免去配置ssl证书的繁琐步骤),将其复制下来

20221228153119

在浏览器输入上面暴露的http公网地址,实现在公网环境访问。出现这个界面表示站点暴露到公网成功。

20221228153132

3.3 配置后台服务

由于以上命令暴露的公网地址在窗口关闭后隧道也将同步关闭无法访问,所以我们需要将参数保存到配置文件中。方便每次开机后,后台自启动运行隧道。

  • 编辑cpolar.yml文件
vi /usr/local/etc/cpolar/cpolar.yml
  • 打开后按i编辑,在文件中添加如下配置
authtoken: xxxxxxxxxxxx #认证token

tunnels:
  webstation:
    proto: http
    addr: "80"
    region: cn_vip

参数介绍:

  • webstation:隧道名称,可以自定义
  • proto: 协议,如tcp或者http
  • region:线路地区:有cn cn_vip cn_top等,可自由选择,具体请参考官网文档——全球基础设施

20221228153150

输入完成后按Esc键退出编辑,然后输入:wq保存(如果您的项目部署在其他端口上,也可以指定其他端口)

  • 启动所有隧道测试,出现以下界面,然后复制webstation隧道的公网地址(指向80端口).
cpolar start-all

20221228153201

  • 打开浏览器输入复制的公网地址访问

20221228153209

4. 配置固定二级子域名

由于使用免费cpolar所生成的公网地址为随机临时地址,24小时内会重复变化。我们可以为其配置固定的二级子域名。

注意,配置固定二级子域名需要将cpolar套餐升级至基础套餐或以上。

进入cpolar官网并登录进入后台界面,点击左侧的预留,找到保留二级子域名,我们来为本地web站点保留一个二级子域名:

  • 地区:选择China VIP
  • 二级域名:可自定义
  • 描述:即备注,可自定义

20221228153216

二级子域名保留成功,将其复制下来

20221228153223

  • 编辑cpolar.yml配置文件
vi /usr/local/etc/cpolar/cpolar.yml

打开后按i编辑

在webstation下添加一行:subdomain: ”myweb1”

20221228153234

编辑完成按Esc键退出编辑,然后输入:wq回车保存。然后执行启动所有隧道,出现地址后复制公网地址

cpolar start-all

20221228153241

5. 测试使用固定二级子域名访问本地web站点

在浏览器访问刚刚所配置成功的二级子域名,出现页面配置成功。

20221228153251

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

动力节点Vue3课程笔记——四、Vue与AJAX

四、Vue与AJAX 4.1 回顾发送AJAX异步请求的方式 发送AJAX异步请求的常见方式包括: 原生方式,使用浏览器内置的JS对象XMLHttpRequest const xhr new XMLHttpRequest()xhr.onreadystatechange function(){}xhr.open()xhr.send() 原生方式&#xff0…

30天学会《Streamlit》(7)

30学会《Streamlit》是一项编码挑战,旨在帮助您开始构建Streamlit应用程序。特别是,您将能够: 为构建Streamlit应用程序设置编码环境 构建您的第一个Streamlit应用程序 了解用于Streamlit应用程序的所有很棒的输入/输出小部件 第7天 - st…

聚焦商会 | 活动彰显一个商会的战斗力与影响力

4月13日,北京厦航嘉年华酒店。 一个普通的日子,对北京茶业企业商会来说却是值得纪念的一天,可以浓笔重墨书写的一天。 一天成功举办了三场活动,得到社会各界的支持与肯定。 北京茶业企业商会是如何做到的?经过与商会领…

python批量下载怀俄明大学探空数据Wyoming soundings并处理

下载怀俄明大学的探空数据,之前用的是气象家园写的maltab脚本,但总是链接不上,而且有的站点需要用新网址,有的有需要用老网址,很麻烦,痛定思痛用决定终于用python了,主要有两种方式,…

nightingale-0-介绍单机二进制部署

(一) 夜莺介绍 Nightingale | 夜莺监控,一款先进的开源云原生监控分析系统,采用 All-In-One 的设计,集数据采集、可视化、监控告警、数据分析于一体,与云原生生态紧密集成,提供开箱即用的企业级监控分析和告警能力。于…

渗滤液除氨氮、矿井水除氨氮,氨氮吸附技术

垃圾渗滤液是生活垃圾的必然产物,顾名思义,垃圾渗滤液是指来源于垃圾填埋场中垃圾本身含有的水分、进入填埋场的雨雪水及其他水分,扣除垃圾、覆土层的饱和持水量,并经历垃圾层和覆土层而形成的一种高浓度的有机废水。垃圾在堆放和…

[golang gin框架] 24.Gin 商城项目-redis讲解以及操作

一.reids相关文章 Redis五种数据类型及其应用场景 REDIS中的缓存穿透,缓存击穿,缓存雪崩原因以及解决方案 redis实现用户签到,统计活跃用户,用户在线状态,用户留存率 [golang gin框架] 12.Gin 商城项目-base64Captcha生…

KDXJ-8 SF6气体泄漏报警在线检测系统

一、功能特点 1. 定量测量SF6(六氟化硫)气体浓度; 2. 定量测量O2(氧气)气体浓度; 3. 定量测量大气温湿度; 4. 可根据需要设置SF6和O2气体浓度的报警点; 5. 后台监控; 6.…

【通过加载plist文件显示分组数据 Objective-C语言】

一、展示汽车品牌数据 1.首先,我们还是先把控制器调成3.5英寸,再把模拟器调成iPhone4S, 2.然后呢,我们要先把素材拷进来, 我们要展示,要把一个plist文件中的数据展示到我们的这个UITableView里面,所以说,首先,是要把我们的plist文件拷进来, 找到我们这个plist文件…

爱智EdgerOS之深入解析在爱智应用中如何使用Socket.IO轻松实现双向通信

一、什么是 Socket.IO? Socket.IO 是一个基于事件通信的实时应用程序框架,它在即时通讯、通知和消息推送,实时分析等场景中有广泛的应用。Socket.IO 包括两个部分: 在 Server 端的模块(JSRE 已提供了 socket.io 模块&…

Onnx 转Ncnn

Onnx 转Ncnn 算法工程师给了onnx,需要转成ncnn才能用到安卓上去,步骤如下 简化onnx 算法给了.onnx后缀的文件,100多兆,太大,第一步,先简化: conda env list 查看conda环境(前提是之前已经配…

企业级实践:分布式系统中的可靠消息最终一致性方案

背景 公司由于业务爆发式增长,新上了许多业务系统,例如:本地生活、社区团购、旅投B2B、旅投B2C等系统;同时,由于业务系统越来越多,为了运营方便,把分销、营销、订单、会员等多个业务系统公共业…

Babel零基础教程

参考https://www.jiangruitao.com/babel/ 写的非常好,本人只是为了方便查找,记录在自己博客上,原文可以去该链接拜读 1、 Babel 简介 Babel是什么? Babel是一个工具集,主要用于将ES6版本的JavaScript代码转为ES5等向…

遗传算法的概念和python实现

遗传算法是一个非常经典的智能算法,主要用于解决优化问题。本文主要简单介绍一些原理,同时给出一个基于python实现的,用于解决实数内优化问题的模板。 本文参考: 原理:遗传算法入门详解 - 知乎 简单介绍 遗传算法就…

服务型企业如何使用飞项实现项目化管理?

服务型企业的业务模式一般都是按项目来运作的,其业务分为售前,售中和售后三个阶段,分别由不同部门和人员对客户进行个性化服务。在这个过程中需要对人、流程和知识的高效统筹管理,即项目的整体管理,因此存在着不小的挑…

Nvidia Jetson Orin: SPE/AON Cortex-R5 固件开发

Nvidia Jetson Orin: SPE/AON Cortex-R5 固件开发 写在最前边开发/下载 SPE 固件关于修改DTS 写在最前边 SPE 只能控制 AON GPIO 最多32个PIN 开发/下载 SPE 固件 S1:打开 https://developer.nvidia.com/embedded/jetson-linux S2:这里下载 S3&#x…

Linux环境使用日志切割工具-cronolog

Linux环境使用日志切割工具 需明白的点:1.安装 2.如何使用 一、安装cronolog 1.首先检查是否存在cronolog 命令:whereis cronolog 或 which cronolog 2.不存在则安装 安装方式: a.yum 安装:yum install cronolog b. 源码安装&am…

C/C++|物联网开发入门+项目实战|指针|嵌入式C语言高级|C语言内存空间的使用-数组-学习笔记(10)

参考:麦子学院-嵌入式C语言高级-内存空间 2-3 : C语言内存空间的使用-数组 内存分配的一种形式 数组的定义及初始化 定义一个空间: 1、大小 2、读取方式 数组名[]:升级为连续空间的名称, [m]的作用域只在申请的时候起作用 每个多大?数组…

太给力了,这款java表单设计器可提高办公协作效率!

随着办公自动化的快速发展,java表单设计器的应用价值和突出优势也逐渐成为企业提高办公效率的好帮手。传统的表单操作起来费时费力,效率不高,逐渐满足不了日益繁多的业务需求了,在广大用户的呼声和市场发展下,简洁、灵…

ESP32学习五-启动流程

一、简介 在ESP32的开发中,通常我们会从app_main函数中开始我们的代码开发。但是为什么是app_main呢?app_main又是从哪里被调用的?app_main之前又做了什么操作呢?今天我们就来详细分析一下。 官方参考文档:应用程序的启…