CMS(内容管理系统)放在web中理解,也就是我们常说的后台了,用于网站的日常管理。又到期末了,我们的课程——web程序设计,需要提交一份期末大作业,最近需要开发出一个基于JSP的简单web,所以呢,就又想起了初做web开发时的往事。因此特来写一篇关于我和CMS从结识到熟悉熟悉的往事。

最初接触网站后台应该是在17年下半年了,当时跟着学长的一个团队做web开发,最初的打算是开发静态的web,当时我也是刚学完html,所以抱着学习的态度,就接下来这个开发的任务。 那个时候是一边学习js,一边做开发。学js的时候,就发现可以通过js来改变页面的内容,于是我天真的想到了,能不能写一个甚至多个不告诉用户的html页面,通过js来改变程序的内容呢?当时哪里知道CMS这种东西早已经被人发明出来了。我还傻傻的去尝试了,发现不行,为什么呢,因为通过js改变的内容只是改变了当前用户浏览器请求过的html页面中的内容,它只是运行在用户浏览器中的页面而已,而且即使改变了当前页面,也无法改变已经请求过的其它页面。后来已经忘记了是怎么知道的前后端程序的区别的了,可能是通过查阅资料吧。那后来知道了前端是运行在浏览器中的,后端程序是运行在服务器端的,所以就开始学了后端语言PHP(现在已经记不清为什么要学习PHP了,我心里有几种可能的原因,这里就不赘述了)。我是在看网上PHP教程的时候发现,教程中在做的东西和我的想法一样(教程就是在做我现在知道的一个叫做后台的东西),当时我真的很惊喜,因为发现自己的想法是可行的,而且很久以前就已经被人所熟悉并使用了。

再往后来的话,就是学PHP,搭个框架,去开发后台页面,也用上数据库去存取数据,一边还在做着前台用户界面及后端程序的开发。那个时候还没有开始写用户注册、登录的功能,因为在项目中没有这个需求,只要求为用户展示就行了(或者说当时开发需求不那么清晰吧),也不知道cookie、session这种东西的存在。做着做着发现了一件有意思的事情^_^,因为我对安全感兴趣,所以我就想了,那如果别人的网站后台偶然的被别人发现了, 那敏感信息不就泄露了吗?这还得了!!!所以就把疑问在网上查了,于是就知道了,通过管理员登录这个功能去做基础的权限把控。于是我就做了个后台首页,把登录功能用上,这样我就给自己的后台加上了个门,你要想进入我的后台,那你就需要知道管理员账号和密码。当然,我也把后台框架做了权限控制,只有登录用户才可以查看内容的。那时根本都不清楚include进来的控制权限的php页面到底作用域有多大,就以为是整个后台都作用到了,也没想这么多。

一个对安全感兴趣的程序员当然会在开发中时刻思考安全问题(至少在当时我把自己所有能想到的可能会出现漏洞的地方都想到了O(∩_∩)O哈哈~),我就发现了,别人会不会不通过我的后台框架去访问我的后台页面,而是直接在URL地址中输入后台页面的绝对路径?那去尝试下,这样我就发现了,在未登录状态下,可以通过直接访问后台页面的方法去访问后台,那这样就好比我房间的门我锁上了,但是我给小偷留了很多窗户,而且还是敞开的窗户!!!解决办法自然是给所有后台页面都include权限控制的php程序。

就这样,后来,我和我自己开发的后台的故事也就基本了解了。随着开发的深入,学习的东西也越来越多,后台自然而然的就很顺利的开发完了。再往后来的话,web开发的任务就完成了,我也离开了项目区搞安全了。搞渗透的时候我才发现,嗯哼?别人有开发好的CMS,而且还是免费的,有这种事!都可以直接通过这种CMS直接搭建一个web了,这是我才知道,原来一点开发不懂也是可以搭建自己的网站是真的可以实现的啊!就算开发,也可以根据别人开发好的CMS进行二次开发自己的web。 这样自己之前费那么大力气开发后台岂不是浪费时间,自己做的还不够安全,这时候真有种觉得自己很渺小的感觉,觉得这个世界上有太多自己不知道的东西了……当然自己当初的辛苦也不会白费,因为它让我成长了,成长总归都是一步一步来的嘛,没有之前,就不会现在的自己,就好像没有现在的自己就不会有将来更加优秀的自己。

我和CMS的往事的更多相关文章

  1. CMS模板应用调研问卷

    截止目前,已经有数十家网站与我们合作,进行了MIP化改造,在搜索结果页也能看到"闪电标"的出现.除了改造方面的问题,MIP项目组被问到最多的就是:我用了wordpress,我用了织 ...

  2. Kooboo CMS技术文档之五:站点配置管理

    站点关系 管理站点间的关系,站点可以有子站点,子站点继承父站点的部分配置数据,同时子站点还可以根据需要,本地化由父站点继承而来的数据.通过继承和本地化,可以让子站点在用最小的改动代价,来完成一个与父站 ...

  3. Kooboo CMS技术文档之二:Kooboo CMS的安装步骤

    在IIS上安装Kooboo CMS Kooboo CMS安装之后 安装的常见问题 1. 在IIS上安装Kooboo CMS Kooboo CMS部署到正式环境相当简单,安装过程是一个普通MVC站点在I ...

  4. Kooboo CMS技术文档之一:Kooboo CMS技术背景

    语言平台 依赖注入方案 存储模型 1. 语言平台 Kooboo CMS基于.NET Framework 4.x,.NET Framework 4.x的一些技术特性成为站点开发人员使用Kooboo CM ...

  5. Kooboo CMS技术文档之四:Kooboo CMS的站点组成部分

    Kooboo CMS本着功能独立分离的原则,将站点分为三部分组成:用户管理,站点管理和内容数据库管理.各个功能之间既可独立使用,也可以容易组成在一起形成一个完整的系统. 用户管理 管理整个系统内的用户 ...

  6. Kooboo CMS技术文档之三:切换数据存储方式

    切换数据存储方式包括以下几种: 将文本内容存储在SqlServer.MySQL.MongoDB等数据库中 将站点配置信息存储在数据库中 将后台用户信息存储在数据库中 将会员信息存储在数据库中 将图片. ...

  7. zerojs! 造出最好的 CMS 轮子

    zerojs是一个基于nodejs.angularjs.git的CMS.在它之上可以继续开发出博客.论坛.wiki等类似的内容管理型系统. 拥抱开发者和社区 层次清晰,高度解耦.前后端即使分开也都是完 ...

  8. 一个小型的CMS后台管理平台发布啦~

    由于我不太懂怎么把博客园里我上传的文件共享,所以只好先放到百度网盘里了 数据库和发布的网站都放在这里 http://pan.baidu.com/s/1eQw3DOA 有问题请参考以下链接: http: ...

  9. 织梦cms常用标签

    dedecms简介:织梦内容管理系统(DedeCms) 以简单.实用.开源而闻名,是国内知名的PHP开源网站管理系统,也是使用用户较多的PHP类CMS系统,在经历多年的发展,目前的版本无论在功能,还是 ...

随机推荐

  1. ElementUI datepicker日期选择器时间选择范围限制

    ElementUI是饿了么推出的一套基于vue2.x的一个ui框架.官方文档也很详细,这里做一个element-ui日期插件的补充. 最近做项目用到了datepicker,需要对日期选择做一些限制, ...

  2. 02 Vue介绍与安装,指令系统 v-*、音乐播放器

    VUE文档 https://cn.vuejs.org/v2/guide/ 1.vue的介绍 尤雨溪 1.vue的优点 2.vue的介绍 3.vue的安装 4.声明式渲染 <body> &l ...

  3. Oracle存储结构-表空间

    表空间 oracle文件注意的问题 控制文件,redolog文件,数据文件----一定要放在存储上 问题:银行用户,集群切换失败,原因是数据库中部分的文件未放到存储上 存储三种组织形式:文件系统.AS ...

  4. PHP回顾(2)

    print_r()打印输出原格式,就加上标签<pre>.例子:echo '<pre>'; print_r($arr); echo '<pre>'; 添加数组的时候, ...

  5. Killer Problem (UVA 11898 )

    Problem You are given an array of N integers and Q queries. Each query is a closed interval [l, r]. ...

  6. Miller Robin大素数判定

    Miller Robin算法 当要判断的数过大,以至于根n的算法不可行时,可以采用这种方法来判定素数. 用于判断大于2的奇数(2和偶数需要手动判断),是概率意义上的判定,因此需要做多次来减少出错概率. ...

  7. java基础阶段几个必会面试题

    摘自:https://www.cnblogs.com/zn19961006/p/11869182.html java基础阶段几个必会面试题 目录 1.说出你对面向对象的理解 在我理解,面向对象是向现实 ...

  8. flask入门第一篇

    一. Python 现阶段三大主流Web框架 Django Tornado Flask 对比 1.Django 主要特点是大而全,集成了很多组件,例如: Models Admin Form 等等, 不 ...

  9. 【Java面试宝典】正则表达式

    文章目录 正则表达式-语法 Pattern.compile方法 ● 请你谈谈Java中是如何支持正则表达式操作的? 考察点:正则表达式 参考回答: Java中的String类提供了支持正则表达式操作的 ...

  10. echo、print、print_r之间的区别

    echo php语句:可以一次输出多个值,多个值之间用逗号隔开:没有返回值,输出标量的值.print 函数:只能打印简单类型变量的值(标量,如int,string),返回值为布尔型print_r 函数 ...