Web
如何把生产环境的Discuz复制到本地
首先,把生产环境的数据库导出并在本地导入。
然后,从git下载DiscuzX代码(假设路径为http://localhost/discuz/)
这个时候访问http://localhost/discuz/会跳转到install目录,这是因为没有复制生产环境的配置文件。下面Linux/Mac命令可把服务器(例子里的路径要根据各自情况修改)配置文件同步到本地:(Windows用户可用WinScp同步)
rsync -rv root@bbs.zrwh.org:/var/www/html/config/* ./
之后就可以访问 http://localhost/discuz/,但会报数据库连接错误。这是因为本地的MySQL没有创建和服务器一样的账号权限。我们可以选择修改配置文件或本地的MySQL账号密码。我选择了前者,因为修改MySQL账号密码会影响本地已有其它系统。但改配置要注意,不能把配置文件同步到生产环境。
接着,我们再刷新页面(http://localhost/discuz/)会看到./data/template访问错误。这是因为data目录没有写权限(Windows下可能不会遇到),使用下面命令修改:
分析俄罗斯方块代码
作者只用了45分钟时间就完成了这个俄罗斯方块游戏,代码简单,是学习数据结构和简单Canvas动画的绝佳例子!
分析2048游戏代码
这部分内容涉及HTML、JavaScript和CSS知识,不涉及后端PHP和MySQL知识。
https://github.com/hgneng/2048
1. 首页index.html
https://github.com/hgneng/2048/blob/master/index.html
2. 样式main.css
https://github.com/hgneng/2048/blob/master/style/main.css
3. JavaScript逻辑
JavaScript是按照HTML里引用的顺序执行的,所以阅读JavaScript逻辑时应该按照引用的顺序一个一个阅读:
Selenium - Web自动化测试工具
浏览器驱动,Firefox的驱动是内置的(在45以上的版本暂时无法使用),无需额外下载
Java客户端API,其它语言可能需要查阅Java的API
FreeCodeCamp
传说中GitHub第一的项目,是学习Web开发的项目,值得深入研究一下。
国内各浏览器市场占有率
对服务器的access.log做了一下分析,总结出用户浏览器的使用情况。要注意的是,网站的使用者是中学的教师和学生。由于360浏览器没有一个容易识别的UserAgent,因此其使用量会隐藏在Chrome和MSIE里面。解读下面数据的时候应该主要看Visitors列而不是Hits。
对比一下IE8和IE6的Visitors、Hits、Bandwidth数据发现,IE6消耗更多的带宽,可能是IE8的缓存做得比IE6好很多的缘故。
使用移动QQ浏览器的用户是最多的,占17.3%。而UC浏览器只占7.9%。(注意,我从不写软文,尽管读者可以不信)这个数据令我有点意外,我以为QQ浏览器和UC浏览器市场占有率是差不多的。不过这可能反而年轻一代用户喜欢用QQ,顺便也用了QQ浏览器。事实上用户使用国内众多浏览器中其中一款的原因可能只是受市场营销影响的从众选择,各大浏览器只要在Webkit内核基础上不引入太多bug应该差别不大。不过,从Visitors和Bandwidth数据来看,以省流量起家的UC还是可以看出一定的技术能力。
UserAgent为MetaSr的是搜狗浏览器。