用PHP开发自己的独立博客(一)——概述
开篇废话:因为重新回归朝九晚五的生活,于是就想开始写技术博客,当是做技术文档了。于是试用了各类博客,CSDN、cnblogs都还不错。简单试用了一下,说说各自的特点。
CSDN的界面不能定制,使用默认的各类模板基本上还算可以。就是打开的时候要加载很久,可能因为引入的资源文件太杂乱了吧。CSDN的文章收录要比cnblogs好像要快很多。
cnblogs可以自己设计模板,添加CSS和HTML。但是界面需要花很多功夫才能修饰好,如果不修饰就特别简陋。cnblogs的加载速度没的说,秒开。所以最后斟酌了一下,还是有点难以取舍,干脆两个都注册了账号。到时候两个同时更新就好了。
之所以最后自己开发博客,是因为平常有一些小的想法,总想写出代码跑一下,验证一下。于是就有了这个博客。比如最近研究神经网络的算法, 就想试着做一个博文推荐的系统。前一阵开发邮箱,就想把自己的邮箱地址写在每一篇博文里,让发垃圾邮件的人抓取到,从而验证我开发的邮件系统的垃圾邮件过滤算法的效果……
打开速度的问题:
个人博客的业务逻辑是很简单的,无非就是发文章、阅读文章、编辑分类、评论等等。之所以谈架构,是因为前两天用CSDN都快卡哭了。所以就想研究研究博客类网站如何每个页面都秒开。
第一,页面尽量静态化。当数据库庞大后,如果每打开一篇博文都要查数据库读出来,还是读取分类、评论等等。比较浪费资源,所以可以将整个页面或部分页面静态化。
第二,页面内的资源使用CDN。简单,但是很有效果。
第三,访问量大的,数据库查询要做缓存,做延迟更新等等。比如文章的阅读量等,可以攒够十次再提交一次数据库更新。
因为本博客访问量尚小,所以暂时先不考虑上面提到的方法。
博客结构:
博客大的模块要分为后台和前台,后台的每个操作都要验证是否登录,里面包含了对文章、分类的增删改查操作。前台主要就是展示的作用了。为了快速开发,通常都要使用一些MVC的框架来规则化开发流程。我们这里使用的是ThinkPHP。
前端的框架可以让你快速开发出美观的界面,我们这里采用的是bootstrap。
JS框架使用的是Jquery。
本文是一个系列,教你手把手用PHP开发一个博客出来。下一篇将正式带您开始开发!
用PHP开发自己的独立博客(一)——概述的更多相关文章
- iOS开发个人独立博客收集
如今国内技术博客站点有非常多,如CSDN,CNBlog,ITEye等.论坛的话主要是要cocachina. 这里是我收集的iOS开发个人独立博客,文章用搜索引擎比較难搜到,都是牛人: OneV's D ...
- Android应用开发-小巫CSDN博客client之嵌入有米广告
Android应用开发-小巫CSDN博客client之嵌入有米广告 上一篇博客给大家介绍怎样集成友盟社会化组件,本篇继续带来干货,教大家怎样嵌入广告到应用中去.小巫自称专业对接30年,熟悉各大渠道SD ...
- 独立博客网站FansUnion.cn操作2多年的经验和教训以及未来计划
今天,我把运营了2年的独立博客站点FansUnion给"归零"了. 2012年6月.我成功搭建了自己的博客站点FansUnion.cn,这是因为自己的不懈努力和时代发展成就的 ...
- 使用 GitHub, Jekyll 打造自己的免费独立博客
使用 GitHub, Jekyll 打造自己的免费独立博客 GitHub是一个代码托管网站,现在很多开源项目都放在GitHub上. 利用GitHub,可以让全球各地的程序员们一起协作开发.GitHub ...
- 欢迎访问我的独立博客 tracefact.net (2019.1.30)
欢迎访问我的独立博客 tracefact.net 长期以来,我都同时维护着两个博客,博客园和 tracefact.net,感觉有点分散精力,所以博客园以后不再每篇文章都同步更新了. 我会挑个别比较好的 ...
- 使用 github Pages 服务建立个人独立博客全过程
你是否有这样子的需求,只是想简单的写写文章,记录下自己的学习心得.成长经历等,都是些文字内容,不需要配置使用数据库.不想购买服务器自己搭建站点,只是想安安静静的用比较舒服的方式来写篇文章. 静态博客就 ...
- hexo干货系列:(一)hexo+gitHub搭建个人独立博客
前言 一直想要一个自己的独立博客,但是觉得申请域名+服务器的太麻烦了就一直没有实现.偶然机会发现Hexo这个优秀的静态博客框架,再搭配现在流行的gitHub,简直是完美写博客的黄金搭档(免费+方便). ...
- 独立博客网站FansUnion.cn运营2年的经验和教训以及未来规划
今天,我把运营了2年的独立博客网站FansUnion给"归零"了. 2012年6月,我成功搭建了自己的博客网站FansUnion.cn,这是由于自己的不懈努力和时代发展成就的 ...
- 微信群打卡机器人XiaoV项目开源 | 蔡培培的独立博客
原文首发于蔡培培的独立博客.原文链接<微信群打卡机器人XiaoV项目开源>. 5月21日,在米花(后面" 亚里士多德式友谊"专题会提及)的影响下,决定搞个私人运动群,拉 ...
随机推荐
- C/C++综合測试题(四)
又刷了一套题 这些题都是百度.阿里巴巴.腾讯.网易.新浪等公司的面试原题.有一定的难度.只是确实相当有水平.能够通过做题来查漏补缺. 11.以下代码的输出是什么? class A { public: ...
- .Net 与 Javascript 混合编程系列
之前的文章有提到 edge 和 nodejs 交互,通过node的模块为C# 提供一些扩展,这个还是比較方便. 这里说下为什么要使用js. 1.SharpKit是一个用于在编译时将C#语言转换为Jav ...
- 2016.3.16__CSS3_选择器_边框_背景_蒙版mask__第九天
CSS3 假设您认为这篇文章还不错.能够去H5专题介绍中查看很多其它相关文章. 今日课程预览 1. CSS3 的选择器 1.1 子选择器 比如:设置div下一级的p标签的颜色属性 div>p { ...
- C语言8大经典排序算法(1)
算法一直是编程的基础,而排序算法是学习算法的开始,排序也是数据处理的重要内容.所谓排序是指将一个无序列整理成按非递减顺序排列的有序序列.排列的方法有很多,根据待排序序列的规模以及对数据的处理的要求,可 ...
- 解决jQuery uploadify在非IE核心浏览器下无法上传
之前上传了一个通过Flash实现多文件上传,但是在IE正常运行,FireFox 不能正常上传.经过反复研究学习,之所以firefox和360浏览器无法正常运行,是因为FireFox.chrome.36 ...
- [翻译]NUnit---String && Collection && File && Directory Assert (七)
StringAssert (NUnit 2.2.3) StringAssert类提供一系列检查字符串的方法. CollectionAssert (NUnit 2.4 / 2.5) Collection ...
- 怎么样关掉红米note开发者选项
进 系统设置\应用 ,找到“设置”点进去,清一下数据,再打开“设置”查看,就没有“开发者选项”了
- python-----opencv读取视频、读取图片 显示指定大小并按键实现暂停、播放
按空格键实现暂停播放,代码如下: cv2.namedWindow("m1", 0) cv2.resizeWindow("m1", 800, 600) cv2.i ...
- jquery easyui-datagrid手动增加删除重置行
1.实现的效果图如下 2.界面: <div region="center"> <table id="tt"> ...
- 采用jq链(end方法和andSelf()方法)
end()方法: <style type="text/css"> .m1{background:#09C;} .m2{border:1px solid #000;} & ...