【获奖感言】2019年7月18日 

感谢CSDN,让我这篇文章在CSDN征文活动第一期的获奖!

获奖名单出处:10W+的机会来了!快把文章扔过来_CSDN官方博客的博客-CSDN博客

---------------------------------------------------------------------------------------------------

下面谈谈我自己第一个网站,从开发到访问的整个流程。

【前言】

我相信,大多开发人员在刚进公司的时候,基本都是在写业务代码,结果两三年下来,发现自己代码确实写得比以前好看多了,但对整个的网站从开发到上线的流程,却还是一头雾水。下面以我自己的经验给大家说下,如何将一个写好的工程发布到公网上?废话不多说,直接进入主题。

【1】创建网站项目

第一步没啥好说的,在你本地开发工具里(我这里是Eclipse),创建网站项目,写好你网站功能的代码。

喏,下面这个就是我的网站项目。

如果有朋友还不清楚整个项目搭建的来龙去脉,我建议你看看下面这篇文章。

相关推荐:Springboot项目搭建(前端到数据库,超详细)

【2】购买域名

(2.1)域名有什么用?

既然你想让别人访问你的网站,肯定要先购买一个属于自己的域名,难不成你想让用户输入一个IP地址来访问。

比如:百度网站的域名是baidu.com

而网址前面的http://www. 或者https://www. 则是各种协议,他们和域名组合起来就成为了一个完整的网址。

域名建议售价大概为:30元/年,你最好别被坑了!

(2.2)域名在哪里可以买到?

购买域名的地方有很多,什么阿里云,腾讯云,华为云,百度随便一搜“域名购买”就可以看到。

(2.3)购买域名的时候,首先会让你选择域名类型,填写域名名称,然后点击查询。

(2.4)如果域名已经存在了,则会提示你,这个域名是不能注册的,那么你需要返回重新想一个。

(2.5)如果你想的域名OK,没有被注册,那么就会提示你域名的价格,那么这时候就可以点击进行注册了。

(2.6)注册的过程中,会让你填写一些相关信息,中国字都看得懂,这里就不详细介绍了,自己按需要填写。

(2.7)域名备案

域名在网站上购买了之后,接下来你需要进行域名备案,就是将你的相关信息在网络管理局(简称管局)进行登记。

(2.8)为什么要域名备案?

域名备案需要填写各种关于你的东西,以后只要你的网站只要存在一些不符合国家法律法规的事情,一旦被发现或者举报,他们就可以通过这些找到你,根据哪条法规处理该怎么处理就怎么处理。

所以自己的网站不要做这些涉及坏的东西,一旦被举报,上面就能立马找到你。

(2.9)如何域名备案?

具体怎么备案我就不详细描述了,一般购买域名的网站都有小姐姐客服,找她就对了。

首先会让你填写好备案的基本信息,然后照几张手持身份证的照片(通常网站还要寄给你一张背景海报来照),填好了之后,购买域名的地方会进行初级审核,如果他觉得OK了,那么他再继续向上(管局)提交,网管局里觉得OK了,那么才算是基本OK。

(2.10)管局审核一般需要多久?

每个省每天备案的网站有多有少,所以审核的时间不同,下面有大神总结的一份各省备案通过时间。

【各省备案审核时间】腾讯云开发者社区-腾讯云

具体多久呢?我实际的情况给你们感受下吧!(四川省)

(2.11)域名管局审核通过之后,你就会拿到一个备案号(如:京公网安备11000002000001号 ) ,并且上面还会不定时的抽查打电话询问当前服务器是否自己在使用。

【3】购买云服务器

(3.1)为什么要购买云服务器?

你的网站要让别人访问,你也肯定想要有一个专业的地方代你保管,而且24小时访问吧!

如果买不起?可以!那就像我一样,老老实实的租一个吧!其实租也不便宜,大致价位为60元/月,如果你打算长期用,那就按年买吧,如果你只是想体验下整个流程,买1个月即可。

(3.2)在哪里购买/租用云服务器?

我百度搜“云服务器”,相信我,前3个答案都是你想要的。

(3.3)你的云服务器买好之后,进入后台云服务器管理,你就可以拿到一个IP,以及远程登录的帐号和密码(后面网站发版需要用到的)。

【4】域名解析

(4.1)什么是域名解析?

你买了域名之后,如果什么都不做,凭什么输入域名后就要跳转到你的网站上,而不是跳到我的网站?总得要发生点什么关系。

所谓域名解析,就是将一个IP和域名进行绑定,这样你访问域名的时候,域名解析协议就知道你要到哪个IP上了,然后访问你的云服务器上的程序。

(4.2)如何域名解析?

你购买了云服务器后,会得到一个IP地址,然后找卖云服务器的小姐姐客服,你说我要域名解析,她会教你在该怎么做的。
域名解析后,等上一段时间(五到五十分钟不等),如果能Ping通,这说明已经绑定成功了。

【5】安装WinSCP

(5.1)WinSCP是什么?

简单的说,通过这个,可以把你自己电脑上的东西,上传到你的云服务器上。我们已经开发好的网站,总得放上去撒运行吧!

(5.2)WinSCP下载与安装

下载地址:WinSCP _WinSCP下载[2022官方最新版]WinSCP安全下载_极速下载

如何安装我就不截图说明了,一路next到底即可。

(5.3)打开WinSCP,新建远程链接

(5.4)新建之后,出现这个界面,还记得上面你购买云服务器后,给你的相关信息吗?把他们填到这里!

建议填写之后点击【保存】,可以避免下次登录再填写(当然,如果你喜欢每次都来填写一遍加深记忆,就当我没说)。

(5.5)保存之后,初始界面就会多一个这样的记录了。

(5.6) 选中它,然后进行登录。

(5.7)然后我们就进入了下面这个页面,左边1这块儿乱哄哄的,一看就知道是笔者的电脑桌面;右边2这块儿看上去没什么东西的,就是你云服务器了上的东西了,和你的电脑差不多,都是文件和文件夹的模式管理。

(5.8)通过这样,你就可以看到你云服务器上有哪些东西了,如果你要上传一个文件到云服务器上,只需要点击左边自己电脑对应的文件,拖到右边即可。当然,也可以从你电脑其他地方ctrl+c你的东西,然后ctrl+v到2部分的空白处完成上传。

这个上传速度由你的网速和你买的云服务器带宽所决定,像我这个,基本上都是维持在200-300KB/s

【6】安装Putty

(6.1)什么是Putty?

简单的说,就是可以通过这个东西,然后用Linux命令操控你的云服务器。

如果你和我之前一样,对Linux是个小白,甚至基本的命令都不知道,那么你可以收下我整理的这份内容,这是我在使用中学到的一些常用命令的整理。

相关推荐:Linux 常用命令

(6.2)为什么选择Putty?

管理Linux命令的工具众多,大众都喜欢用Xshell,每个人都有自己的爱好,你喜欢用什么就用什么吧。这仅仅是一个管理工具而已。

(6.3)Putty下载与安装

这篇文章里说的很好,我就不累述了,相关链接:PuTTY官方下载-PuTTY中文版下载-华军软件园

(6.4)安装完成后,打开昨天的WinSCP面板,点击这个图标,进入Putty终端命令行操作。

(6.5)进来之后,就得到了这个界面

(6.6) 你可以在命令行输入一个ls,查看当前目录下的文件,可以看到这个命令行已经罗列了所有明文件(前缀带点的是隐藏文件,一般来说,隐藏文件保存了重要的相关数据,就是让你看不见,避免让你手残删除)。

【7】安装JDK

(7.1)安装JDK(如果是Java写的程序)

这个就不用多说了撒,Java项目运行的基础环境,你本地Window运行Java项目还得安装JDK呢,凭什么Linux上面就不需要?

(7.2)下载与安装

重复+1:别人总结的比我好,给你们推荐几个,不够自己再去问度娘:

推荐一:Linux安装JDK - 刘曙尘 - 博客园

推荐二:Linux安装JDK完整步骤 - 方大帝的博客 - 博客园

推荐三:Linux安装JDK详细步骤 - OliverShen - 博客园

【8】安装Tomcat

网站发布程序,需要一个Web容器,当初你学的时候,老师我想是应该教过你的。任何网站都需要放在服务器上的web容器里后,才能进行访问(当然,如果你和我一样是Springboot项目的话,可以不用安装,Springboot项目自带Tomcat实现)。

如果你的项目还没有自带Web容器的话,那么就老老实实的安装一个:

重复+2:别人总结的比我好,给你们推荐几个,不够自己再去问度娘:

推荐一:linux下tomcat8安装详解(附图解步骤)_o聆听心灵o的博客-CSDN博客_linux tomcat安装

推荐二:Linux下安装Tomcat服务器和部署Web应用 - 孤傲苍狼 - 博客园

推荐三:linux tomcat 的安装 - WhyWin - 博客园

【9】安装数据库

(9.1)我也不想在写为什么要安装数据库之类的话了,如果你真不知道,请允许我给你一个白眼,然后你自己去问百度娘吧。

下载过程推荐我自己的总结:下载Mysql(图文解说)

安装过程如下:

重复+3:别人总结的比我好,给你们推荐几个,不够自己再去问度娘:

推荐一:linux系统安装mysql数据库 - 段然涛 - 博客园

推荐二:Linux下MySQL安装 - lucky娜娜 - 博客园

推荐三:linux安装mysql教程 - 番薯大大 - 博客园

(9.2)安装好之后,记得创建一个表试试,看看是否真正可运行。

这是常用的 Linux mysql 操作命令,下面这位兄弟整理得很奈斯:

相关推荐:linux 下 mysql 常用命令

【10】本地电脑安装Navicat

(10.1)Navicat是什么?

Navicat是一款数据库管理工具,如果你想直观的看你的数据库,而不是通过敲命令的方式去查看,据猜测统计,99%开发的人员都在用。

(10.2)Navicat下载与安装

相关推荐:Navicat for MySQ中文

【11】打包你的项目

(11.1)如果你也是java项目,那么就先将本地项目打成jar包吧。

Maven项目打包后,target中会有相关jar包,然后 ctrl+c 复制当前Jar包。

(11.2)然后拷贝到你的云服务器上。

【12】启动项目

(12.1)打开Putty,进入你的Jar包所在的目录,然后命令启动你的项目Jar包

启动命令:nohup java -jar xxx.jar &

(12.2)如果你的项目有更新,然后重新上传了Jar包,那么你需要在上传前,先将原来的项目进程杀死,然后重新启动,才能够生效。

输入下面命令,查看原先的进程号,这里我的该项目的进程号是23814:

ps -aux | grep java

(12.3)然后杀死该进程(kill 进程号)。

kill 23814

(12.4)然后再次查看进程,如果没有该进程,说明可以重新发版(我们通常将拷贝Jar包到服务器上,然后启动Jar包,直到可以访问的过程称之为发版)。发版完成后,你就可以访问你的网站了。

【13】网站访问

这一步其实写了当没写,既然标题都说了,从写代码到访问,自然还是得有个访问页面,标志文章的结束。

诺,这就是我的网站,上面啥都没有,完全是花钱买服务器和域名,学习经验。

【总结】

这就是整个网站的诞生过程,从开发,到线上访问,大致如上所述,如果你从未试独自完整试过,我相信你还是需要一定的时间来慢慢了解,毕竟这么多步骤和软件的安装,是需要慢慢整理的。

下面是我当时遇到的一些问题,以及相关总结,这些我已经整理成章,希望对你有用:

(1)Maven打包不执行测试用例

(2)Linux执行Jar包: no main manifest attribute

(3)Linux查看端口使用情况

(4)通过端口查看进程

(5)Mysql常用命令

(6)Linux 常用命令

(7)root 用户下显示 -bash-4.2#,如何恢复正常?

(8)Linux下安装vim编辑器

----------------------------------------------------------------------------------

                        谢谢观看!

-----------------------------------------------------------------------------------

网站开发:从写代码到公网访问整个流程(CSDN征文活动第一期获奖文章)相关推荐

  1. 群晖搭建个人网站,内网穿透实现公网访问 1/3

    系列文章 群晖搭建个人网站,内网穿透实现公网访问 1/3 群晖搭建个人网站,内网穿透实现公网访问 2/3 群晖搭建个人网站,内网穿透实现公网访问 3/3 现代商业活动离不开数据,随着时间推移,企业的数 ...

  2. 群晖搭建个人网站,内网穿透实现公网访问 3/3

    列文章 群晖搭建个人网站,内网穿透实现公网访问 1/3 群晖搭建个人网站,内网穿透实现公网访问 2/3 群晖搭建个人网站,内网穿透实现公网访问 3/3 上一篇: 群晖搭建个人网站,内网穿透实现公网访问 ...

  3. 网站开发之前端代码规范

    前端代码规范 前言 一.唯一定律 二.前段代码规范 (一)命名规范 1.1.项目命名 1.2 .目录命名 1.3.文件存放位置 1.4.JS.CSS.HTML.PNG 等文件命名 1.4.命名严谨性 ...

  4. Console.Write(程序猿?开发?写代码?编程?移动、网页、桌面开发?Oh,我连菜鸟都不是!);...

    You make choices and don't look back. 虽然不是学计算机出身,但我对于写代码充满了好奇,尽管这种兴趣还不像烈酒那样浓烈,也不能像打鸡血似的刺激自己每个神经元而浑身激 ...

  5. 【嵌入式开发】ARM 代码搬移 ( ARM 启动流程 | 代码搬移 起点 终点 | 链接地址 | 汇编代码 )

    文章目录 一. ARM 启动流程 1. 各种类型开发板启动流程 ( 1 ) 2440 开发板启动流程简介 ( ① Nand Flash 拷贝 4 KB -> SRAM 垫脚石 | ② PC 指向 ...

  6. 大漠穷秋:一个写代码的浪人|码云封面人物第 17 期

    大漠穷秋   NiceFish(美人鱼)作者 本期嘉宾 大漠穷秋 :11 年开发经验,其中 5 年后端.6 年前端.熟悉 Java 相关的技术体系,在前端技术方面尤其有深入的研究,曾任 Angular ...

  7. python写代码没思路_一种用python实现的自动重写文章标题的思路与代码实现

    好几周没更新了,今天来给大家分享一个标题重写的小思路以及代码实现. 相信大家可能都用过5118的自动文章标题的功能,就是给一篇内容,然后直接帮你写个标题.这个功能我是去年的时候一个学员给我看的,目前是 ...

  8. CSDN博客第一期移动开发排行榜

    为充分展示移动开发方向优秀博主,发掘潜力新星,为想更多了解移动开发方向的博客用户提供平台,CSDN博客频道推出"移动开发排行榜"活动,每月一期.我们将邀请CSDN博客频道活跃的资深 ...

  9. 数学系小仙女不写代码求“破圈”,一年把华为这个社区做火了

    ????????关注后回复 "进群" ,拉你进程序员交流群???????? 作者:胡晓曼 本文来自:心声社区<华为人> 从写代码到运营,这个研发小仙女将华为开源社区运营 ...

最新文章

  1. unbutu18.04安装Markdown工具typora
  2. Spring MVC集成Spring Data Reids和Spring Session实现Session共享
  3. python mysql 性能监控_MySQL性能监控工具 orzdba python版本
  4. Jquery 获取日期date()对象,jquerydate
  5. 二分k均值 matlab,Matlab函数kmeans:K-均值聚类
  6. visual studio 安装教程
  7. 21天JenkinsDay11 对某个job单独设置权限
  8. 入参对象有LocalDateTime类型的参数,swagger该如何传参
  9. Domino9下web群组维护添加log维护记录
  10. 【Python实例第18讲】affinity propagation聚类算法
  11. 苹果“屈服”了?App Store 竟允许第三方支付!
  12. 特征工程之特征选择——来自小白的进阶之路(二)
  13. favicon.ico在线制作
  14. 计算机无法关闭开机密码,电脑开机密码怎么取消
  15. 2022年(上半年)信息系统项目管理师考试-综合知识真题及解析(一)
  16. 微信小程序连接mysql
  17. null值判断的一个避免错误
  18. 折半查找法(二分搜索法)
  19. 讯搜 配置mysql_迅搜使用指南
  20. 程序猿解决BUG之总结

热门文章

  1. CobaltStrike上线Linux主机(CrossC2)
  2. x265笔记_4_CompressCTU源码分析
  3. JVM 参数 -XX:+PrintGCDetails
  4. 摄影中的微距镜头是什么?
  5. html获取鼠标的当前位置
  6. SEO外链策略之链接诱饵的制作需知
  7. 盐城工学院c语言试卷,听说盐工版的高考题难度系数为A !你能得100分吗?
  8. Downloading from maven-default-http-blocker的解决办法
  9. 解密优秀博士成长史 ——微软亚洲研究院首届博士生学术论坛Panel讨论经验总结...
  10. simulink 储能AGC二次调频,储能采用下垂控制,自适应控制,系统其他机组为水电机组和风电机组,储能出力受ACE变化改变。