一直想做一个属于自己的网站,从3月份买下域名开始,断断续续折腾到现在,我的网站终于正式上线啦。
曾经我是一个连域名服务器的概念也分不清的技术小白,经过这几个月的学习,已经可以独立开发和运营网站了。
建站这个过程真的非常痛苦。网上的建站教程良莠不齐,不是技术大神高屋建瓴的罗列的一长串技术栈,就是各种商家的建站模板软文。
建站这件事情之所以难,是因为它涉及的技术非常多,每一项技术基本都是一个细分技术领域,这就导致,这些学习资料分布的非常零散,新手很难知道自己要找哪些知识,要学到什么深度。
基于此,我根据自己的经验梳理了建站涉及的知识,希望能给所有想做网站的小白一个参考。
网站最基本的三样构成:域名,服务器,网站代码。
这三者的关系呢,如果把做网站比作建房子,域名就相当于这个房子的地址,路号,其他人会根据这个地址找到你的房子。
服务器则相当于房子的地基,你有这么一块土地,才能在土地上搞开发建设。
网站代码就是具体的房子架构了。
所以做网站,就是把这三样东西准备好并组建在一起的过程。
域名准备
阿里云、腾讯云、百度云都可以购买域名,具体自己挑了。这里主要说两个注意点:
1,域名和服务器最好在一个地方购买,在阿里买域名,就继续在阿里买服务器。这样因为是一家人,对接流畅,问题会少很多。
2,有些域名后缀是不能做ICP备案的,无法备案就意味着网站不能正式上线。所以买域名的时候不要贪便宜,看好了再买。
网站代码开发
思考一下,你想做一个什么样的网站,网站想包含什么功能?
不同的网站,不同的功能,需要学习的技术是不同的。
一个简单的单页面展示网站,只需要学点HTML和CSS就可以了。HTML是网站的结构和内容。css是控制网站每块内容的样式的。
如果你想做一个稍微炫酷一点的,有交互效果的,那你可能还要学点JavaScript,用来完成动态的交互效果。
如果你想做的更复杂,比如说可以发布作品或文章的博客站,那除了HTML+CSS+JS,你还需要学一门后端语言和一点数据库知识。
虽然网上都说PHP是最好的后端语言,但这里我学的是nodejs,因为它就是运行在服务器端的JavaScript,之前不是正好学过一点js嘛,感觉会比重新开始一门语言要简单点。
数据库选择,主要是看你有什么数据库了。如果没有现成的,就选一个最熟悉的。(这里有个大坑,我在阿里买的域名和服务器是赠送MySQL数据库的,但我刚开始没注意看,结果研究了两三天的MongoDB)
因为我们的目标是完成网站,而不是成为技术大神,所以提前确定自己的需求,可以方便我们选择最需要的技术来学习,这是最高效的。
建议大家不要说等学精了再开始做网站,看完简单过一遍某个语言的文档或教程后,就开始边学边做,遇到问题就搜索或者提问。
网站每完善一点,你的自信和热情就多一点,这是一个正向反馈。如果沉迷技术无法自拔,死抠知识细节,很有可能会被耗光耐心和热情继而放弃。
搜索的话最好用谷歌,亲身体验,百度翻半个小时找不到的答案,谷歌就在第一页就找到了。
服务器的准备
买服务器要考虑网站代码的大小,开发网站所用到的技术,还有预估的访问流量。确定这三个信息后能让你选择成本最低的最合适的服务器。
目前比较流行的有两类服务器:虚拟主机和云服务器。
虚拟主机的成本较低,阿里6块钱就可以买一年最基础的共享虚拟主机服务。但他有一定的局限性,扩展性和访问速度都不太好。选择虚拟主机,后端程序就只能用PHP来写,因为这是系统配置好的环境,我们改不了。当然如果你只是做一个前端展示页面的话,这个就够了。
云服务器的话,使用起来就比较灵活,可以自行配置环境,因此对开发语言没有任何限制。但灵活带来的问题就是操作复杂了一点,因为很多内容需要你自己来做了。我因为后端用了nodejs,虚拟主机支持不了,就不得不使用云服务器。
建立域名、服务器、网站代码之间的联系
首先将写好的,在本地运行没有问题的网站代码上传到服务器中。虚拟主机的话,用ftp软件直接上传代码。云服务器则需要先配置服务器,然后再上传代码。根据服务器系统的不同(Windows或Linux),上传代码的方式也有所不同。
然后将将域名解析到服务器,这个域名管理后台直接操作就可以。
到这里,虚拟主机的网站已经上线了,直接访问吧!
云服务器还差最后一步,将服务器绑定到域名。这里我使用的是Nginx。
网站SEO优化
网站做完了还得要别人看到呀,所以需要学习一些SEO优化的基本知识。前期投入了不少精力,后期得想办法让网站能挣钱啊。
最后,用一张图总结上面所有的内容: