阿里云ecs服务器配置反向代理上传图片

news2024/9/21 0:40:36

本文所有软件地址:

链接:https://pan.baidu.com/s/12OSFilS-HNsHeXTOM47iaA 
提取码:dqph

为什么要使用阿里云服务器?

项目想让别人通过外网进行访问就需要部署到我们的服务器当中

1.国内知名的服务器介绍

国内比较知名的一些服务器:阿里云,腾讯云,百度云,华为云

2.云服务器介绍(阿里云为例)

官网https://www.aliyun.com/daily-act/ecs/activity_selection?utm_content=se_1015327025

概念:云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低IT成本,提升运维效率,更加专注核心业务创新

什么是弹性伸缩?

弹性伸缩(Auto Scaling),是根据用户的业务需求和策略,经济的自动调整弹性计算计算机资源的管理服务,弹性伸缩不仅适合业务量不断波动的应用程序,同时也适合业务量稳定的应用程序

三.阿里云注册,登录,购买实例

1.进入阿里云官网进行注册登录

注册完之后登录进去找到ecs经济型(根据自己需求)

免费获取阿里云服务器试用(这边使用阿里云免费的为例)

这边有免费获取三个月的方式(企业版本,个人版划到下面就能找到)

选择服务

这边我选择的是个人版之后选择自己需要的服务(所在地区选比较近的)

修改密码

之后等待创建成功之后区修改密码

这边重置密码必须设置难的避免被别人入侵

SSH连接

设置密码之后在ip地址的共有地址连接SSH

使用外部工具连接SSH连接成功!

安装服务

需要安装服务:fastDFS、mariaDB-10.2.13、tomcat-8.0、jdk1.8、nginx-1.12.0

安装jdk

首先先检查自己是否安装了jdk服务

Java -version

没有安装服务的话进入到系统之后我们先在系统盘创建文件夹(usr/local)

cd /usr/local

mkdir java

之后利用ftp工具上传文件到刚刚创建的文件夹下面

2.解压jdk

上传进去之后解压jdk安装包(我这边是gz的安装包)

tar -xvf -C /usr/locl/java

解压完之后进入到解压完之后的文件夹下面查看路径方便待会设置环境变量复制下面的路径

cd /jdk-13.0.1

pwd

3.配置环境变量

编辑环境变量

vi /ect/profile

在末行添加下面代码,注意JAVAHOME是自己安装的路径编辑好之后wq保存退出

JAVA_HOME=/usr/local/java/jdk-13.0.1 CLASSPATH=%JAVA_HOME%/lib:%JAVA_HOME%/jre/lib PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/bin export PATH CLASSPATH JAVA_HOME

编辑环境变量要重启才能生效

source /etc/profile

之后再去检查自己jdk是否安装成功

简单的jdk就安装完成了接下来安装tomcat

安装tomcat

创建tomcat文件夹(还是在/usr/local)创建

mkdir tomcat

上传压缩文件并解压之后进入到里面的目录

tar -xvf [压缩文件]

进入到bin目录下面启动tomcat服务

./startup.sh

本地试着去访问一下我们的8080端口是否可以访问

可以看到我们是访问不了8080端口的Linux默认不会开放端口

开放端口

回到阿里云控制面板找到安全组

编辑我们端口设置添加8080端口

保存完之后在回到我们浏览器试一下能不能访问到8080端口

可以看到是直接访问成功的tomcat已经安装完成

安装MariaDB数据库

MariaDB 和MySQL的区别:MariaDB是MySQL的一个分支,二者使用起来几乎没区别包括命令等,主要由于MySQL被Oracle收购,社区当心MySQL有闭源的风险,因此采用MySQL分支的方式使用,其次MariaDB的速度和性能涉及到查询或者复制等,比MySQL更快,MariaDB也很容易支持高并发的连接数

1.上传文件夹(将我们的maraDB文件夹上传到Linux中)之后进入到MariaDB目录下

安装mariaDB(如果报错可能是之前有这个环境需要卸载)

yum insatll rsync nmap lsof perl-DBI nc

2.安装相应的MariaDB软件包

1.安装jemalloc软件包(解压第一个)

rpm -ivh jemalloc-3.6.0-1.el6.x86_64.rpm

2.安装jemallocdev软件包(第二个)

rpm -ivh jemalloc-devel-3.6.0-1.el6.x86_64.rpm

接下来安装剩下的MariaDB-10.2.13-centos6-x86_64-client.rpm(注意要加上--force --nodeps不检查依赖强制安装)

rpm -ivh MariaDB-10.2.13-centos6-x86_64-client.rpm --force --nodeps

接下来安装boost依赖包(如果是报Nothing to do )的话就是本地默认有这个服务

yum install boost-level.x86_64

最后在解压一下galera-25.3.23-1.rhel6.el6.x86_64.rpm

rpm -ivh galera-25.3.23-1.rhel6.el6.x86_64.rpm --force --nodeps

导入key到本地

rpm --import http://yum.mariadb.org/RPM-GPG-KEY-MariaDB

安装server

rpm -ivh MariaDB-server-10.2.13-1.el6.x86_64

启动服务

service mysql restart

设置mysql开机自启

systemctl enable mysqld;

测试镜像有没有启动(有进程说明启动成功)

ps -aux|grep mysql

mysql安全测试

mysql_secure_installation

第一次进去之后会让你输入root的密码,然后在设置新的密码

(注意:这个是在外网密码必须复杂)

成功之后的话第一个就是询问是否删除一些匿名用户直接y就行了

这个的话就是是否允许远程访问直接y

询问是否删除text测试数据库直接y

看到这个的话就是已经说明完成了

登录MySQL(密码在之前修改的)

mysql -uroot -p

可以看到我们已经成功安装MySQL了

使用外部工具远程连接

出现错误(权限问题没给用户授权

grant all privileges on *.* to 'root'@'%' identified by ' ';flush privileges; create user 'root'@'%' identified with mysql_native_password by 'root'; grant all privileges on *.* to 'root'@'%' with grant option;

flush privileges;

搭建FastDFS与nginx文件服务器

1.安装依赖环境

yum -y install libevent

2.将我们的FastDFS安装包上传到Linux中在创建文件夹并解压·

mkdir FastDFS

先解压libfastcommon-1.0.7.tar.gz

tar -vxzf libfastcommon-1.0.7.tar.gz

进入解压的文件夹之后找到make.sh编译

./make.sh

如果不能make的话需要安装依赖

yum install gcc c++ yum install pcre pcre-devel

yum install zlib zlib-devel

接下来编译安装

./make.sh install

可以看到给我们装到usr/lib64下去了 进入到目录找到lib.so文件

ll libfast*

将这个文件移动到lib目录下

cp libfastcommon.so /usr/lib

cd /usr/lib

安装tracker服务

解压fastdfs-5.05.tar.gz(解压完进入到该目录)

tar -zvxf fastdfs-5.05.tar.gz

在继续编译文件

./make.sh ./make.sh install

会在/usr/bin目录下创建一个fdfs的一个文件现在进入查看

ll fdfs*

之后进入到fastdfs-5.05目录下查看文件

cd到conf文件夹下复制文件

cp * /etc/fdfs cd /etc/fdfs

修改配置文件(tracker.conf)

更改目录

创建需要的文件夹

mkdir /fastdfs/tracker -p

mkdir /fastdfs/storage -p

mkdir /fastdfs/client -p

mkdir /fastdfs/tmp -p

启动tracker服务

  在/usr/bin目录下启动服务

fdfs_trackerd /etc/fdfs/tracker.conf

修改storage.conf配置文件

这边ip地址换成私网ip,公网ip也可以,但是要在安全组配置端口开放

启动store服务

./fdfs_storaged /etc/fdfs/storage.conf

编辑客户端文件

cd /etc/fdfs vim client.conf

上传图片测试

在本地利用ftp上传图片到文件夹下

在/usr/bin目录下使用命令

fdfs_test /etc/fdfs/client.conf upload /usr/local/tp/text.jpg

这样子就是上传成功url是上传的路径

解压fastDFS桥梁文件

tar -zxvf fastdfs-nginx-module_v1.16.tar.gz

进入到解压后的src目录里面

编辑config文件

vim config

删除local目录即可

搭建nginx

在/usr/local创建文件夹在将我们的文件上传上去

mkdir Nginx

解压nginx并进入目录

tar -zvxf nginx-1.12.0.tar.gz

然后最重要的一步进入到fastDFS目录下的src拷贝路径

./configure \ --prefix=/usr/local/nginx \ --pid-path=/var/run/nginx/nginx.pid \ --lock-path=/var/lock/nginx.lock \ --error-log-path=/var/log/nginx/error.log \ --http-log-path=/var/log/nginx/access.log \ --with-http_gzip_static_module \ --http-client-body-temp-path=/var/temp/nginx/client \ --http-proxy-temp-path=/var/temp/nginx/proxy \ --http-fastcgi-temp-path=/var/temp/nginx/fastcgi \ --http-uwsgi-temp-path=/var/temp/nginx/uwsgi \ --http-scgi-temp-path=/var/temp/nginx/scgi \ --add-module=/usr/local/fastDFS/fastdfs-nginx-module/src # 最后一个目录就是刚刚拷贝的路径

之后进入到nginx下执行上面的命令

编译安装nginx

make

接着

make install

拷贝fastDFS桥梁文件到nginx目录

cp mod_fastdfs.conf /etc/fdfs

cd /etc/fdfs

修改配置文件

mod_fastdfs.conf

保存之后进入到nginx/conf目录

编辑nginx.conf文件

server{

listen 端口;

server_name 8公网ip

location /wdzl/MOO{

ngx_fastdfs_module:

   }

 }

之后去到nginx的sbin目录启动nginx服务

./nginx -t

先检查是否可以启动

./nginx

阿里云安全组开放之前配置的端口

关闭防火墙

systemctl stop firewalld

打开浏览器查看上传的图片

已经成功上传上去之后,进行nginx

Nginx反向代理tomcat

先去到nginx的conf文件夹下修改配置文件

vim nginx.conf

配置tomcat集群

upstream tomcats{

server 内网ip:8080;

 }

如果说要做集群那就多加几个server,通过nginx的反向代理去访问8080端口

添加我们的代理路径

重启nginx

./nginx -s reload;

访问tomcat

现在已经做了代理就不需要添加8080的安全组了因为会代理到80端口浏览器访问tomcat

可以发现现在不需要添加8080直接输入我们的公网IP地址就可以访问tomcat到这里环境已经安装好了

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

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

相关文章

语音识别:whisper部署服务器,可远程访问,实时语音转文字(全部代码和详细部署步骤)

Whisper是OpenAI于2022年发布的一个开源深度学习模型,专门用于语音识别任务。它能够将音频转换成文字,支持多种语言的识别,包括但不限于英语、中文、西班牙语等。Whisper模型的特点是它在多种不同的音频条件下(如不同的背景噪声水…

Linux下安装多个nodejs并映射Jenkins

背景 需要Jenkins中切换多个Node,比如nodejs16和nodesjs18,所以在宿主机按照好这两个版本,然后再映射到Jenkins容器中 步骤 1.下载地址 https://nodejs.org/dist/ 放到 cd /opt/soft/2.解压 tar -xzvf node-v16.20.0-linux-x64.tar.gz tar -xzvf n…

spring 没完没了

start 轻量级开源的j2ee框架,容器框架 装javabean aop ioc 定义一个starter的jar包,写一个configuration配置类,将bean定义其中,在starter包的meta-inf/spring.factories中写入配置类,springboot会按约定加载该配置类 …

蓝桥杯-体育健将-CPP-贪心

目录 一、题目描述: 二、整体思路: 三、代码: 一、题目描述: 二、整体思路: 要在k分钟内拿最多的金牌,就意味着要参加尽可能多的项目,因此就要选择耗时(比赛时间和休息时间)最少的项目先预处…

QT6实现创建与操作sqlite数据库(一)

一.Qt为SQL数据库提供支持的基本模块(Qt SQL) Qt SQL的API分为不同层: 驱动层 SQL API层 用户接口层 1.驱动层 对于Qt 是基于C来实现的框架,该层主要包括QSqlDriver,QSqlDriverCreator,QSqlDriverCreatorBase,QSqlPlug…

笔记本固态硬盘损坏数据恢复两种方法 笔记本固态硬盘损坏如何恢复

大家好!今天要跟大家分享的是笔记本固态硬盘损坏数据恢复的两种方法。相信很多小伙伴都遇到过这种情况,电脑突然蓝屏或者死机,再开机后发现自己的数据不见了,这时候该怎么办呢?这可真是让人头疼。毕竟,我们的数据都在里面呢!别着急,我来给大家支招!今天就来给大家介绍…

Linux初识环境变量

🌎环境变量【上】 文章目录: 环境变量 什么是环境变量 关于命令行参数 环境变量       简单了解       为什么需要环境变量       系统中其他环境变量 总结 前言: 环境变量是一种非常重要的概念,它们对于系统的…

鸿蒙Harmony应用开发—ArkTS声明式开发(绘制组件:Path)

路径绘制组件,根据绘制路径生成封闭的自定义形状。 说明: 该组件从API Version 7开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。 子组件 无 接口 Path(value?: { width?: number | string; height?: number |…

OpenResty使用Lua大全(九)实战:nginx-lua-redis实现访问频率控制

文章目录 系列文章索引一、需求背景二、设计方案1、预期结果2、nginx.conf配置3、access_by_limit_frequency.lua4、测试 系列文章索引 OpenResty使用Lua大全(一)Lua语法入门实战 OpenResty使用Lua大全(二)在OpenResty中使用Lua …

Django 反向解析路由

app2.urls.py from django.urls import path, re_path from . import viewsurlpatterns [path(index, views.index, nameindex),path(url_reverse, views.url_reverse, nameapp2_url_reverse), # 使用reverse()方法反向解析 ,name对于视图的reverse("app2_url_reverse&…

鼎阳SDS6204示波器EPICS IOC的搭建

三年前曾写过这个文: 鼎阳SDS6204示波器的EPICS IOC调试 文章里有EPICS网站设备IOC搭建的指南,具体搭建IOC的步骤就没详细写了,几年后重新搭建时发现还是费了些力气才搭建起来,因此写此文记录下手把手的过程方便自己以及EPICS的初…

阿里云云服务器ECS端口多个端口号开通教程

阿里云云服务器ECS端口多个端口号开通教程 1、登录到ECS云服务器管理控制台 2、左侧栏找到【实例与镜像】>>【实例】,找到目标ECS实例,点击实例ID进入到实例详情页 3、切换到【安全组】页面,点击右侧【配置规则】,如下图&…

Mysql与MyBatis

1 Sql语句 增删改查 1.1 建表 -- cmd展示数据库 show databases ; -- cmd登录数据库 mysql localhost -u root -p-- auto_increment 自动增长,每添加一个表项id自动增1 -- char定长字符串 0-255,不足十个字符按十个字符算, varchar变长字符串…

[LLM]大语言模型文本生成—解码策略(Top-k Top-p Temperature)

{"top_k": 5,"temperature": 0.8,"num_beams": 1,"top_p": 0.75,"repetition_penalty": 1.5,"max_tokens": 30000,"message": [{"content": "你好","role": "user&…

【深度学习】手动实现全连接神经网络(FCNN)

🌻个人主页:相洋同学 🥇学习在于行动、总结和坚持,共勉! 神经网络的本质就是通过参数、线性函数与激活函数来拟合特征与目标之间的真实函数关系。 01 神经网络简介 1.1 引入 神经网络是一门重要的机器学习技术&…

hosts文件丢失了怎么办?

hosts文件的位置:C:\Windows\System32\drivers\etc 丢失了恢复的方法: 在“管理员:命令提示符中输入: (winR 然后cmd) for /f %P in (dir %windir%\WinSxS\hosts /b /s) do copy %P %windir%\System32\d…

SAP前台处理:物料主数据创建<MM01>之采购视图

一、背景: 终于来到了物料主数据,我觉得物料账是SAP最重要的一项发明,也一直是SAP的一项重要优势,物料账记录了一个个物料的生生不息; 本章主要讲解物料主数据和财务相关的主要内容:这里特别提示由于作者…

SpringMVC | SpringMVC中的“JSON数据交互“ 和“RESTful支持“

目录: 1.JSON 数据交互1.1 JSON概述1.2 JSON的“数据结构”对象结构数组结构 1.3 JSON的“数据转换” (JSON交互) 作者简介 :一只大皮卡丘,计算机专业学生,正在努力学习、努力敲代码中! 让我们一起继续努力学习! 该文章参考学习教…