git自动部署到Web线上环境
我们在服务器上搭建好git服务后,还希望它能实现自动部署——提交git,线上代码就能立即更新。本文将总结我在git自动部署的一些配置经验,供有需要的人参考
我们在服务器上搭建好git服务后,还希望它能实现自动部署——提交git,线上代码就能立即更新。本文将总结我在git自动部署的一些配置经验,供有需要的人参考
很多技术人员都喜欢使用GitHub或者其他服务商托管代码,但有时候我们希望能把代码放在自己服务器上。本文将记录下我在centos下搭建git服务器以及配置的经验,供有需要的人参考。
ShowDoc是一个非常适合IT团队的在线文档分享工具,它可以加快团队之间沟通的效率。
为了提高网站性能,承载更大的用户访问量,SAE提供了memcache服务和kvdb服务。在普通的服务器环境里,我们可以直接安装相应服务来代替以上两种云服务—— memcache和redis。
在进行网站开发的时候,我们可能会需要定时处理一些任务。比如,定时检查长期不登录的用户然后发邮件去鼓励用户登录,定时备份数据库,定时给女朋友好基友发短信等等。SAE有提供CRON服务,可以以http的方式触发你的PHP脚本从而执行定时任务。在普通服务器环境里,我们可以利用linux服务器的crontab来实现定时任务。此外,本文在后面还会介绍一种“定时任务单文件入口”的偏门方法。
开发PHP项目时,我们经常采用单文件入口,让所有的页面请求都经过index.php。而要实现这功能,我们需要URL重定向,把请求都重定向到index.php文件去。
SAE的config.yaml文件提供的重定向功能满足了此需求,而对于一般的服务器,则需要视相应的WEB服务器软件而定。这里以apache为例,采用htaccess文件实现此功能。
有时候,我们需要想用户发送邮件。如注册邮箱验证、审核结果邮件等。如果是需要群发大量邮件,我更建议使用sendcloud。然而我在这里只讨论小型网站发少量邮件的问题。SAE平台本身带有mail服务,开发者使用SAE的mail Api来发送邮件也蛮方便。当我们迁移网站到普通PHP环境时,可考虑用其他替代品。
网站安全是个复杂问题。本文只简单地讨论防止暴力破解的情况。要区分是人类还是机器人,我们就要出一些识别手段,使得它只有人类才能操作而机器人无法操作。最简单最主流的解决方法便是验证码。在需要安全性验证的地方,加上一层验证码验证,保证它对于人类来说是容易看出来的而程序是难以识别的。当验证码越复杂,机器人就越难破解。
网站程序里的css,js等静态文件直接上传到SAE的代码空间,便能获取到不错的速度。然而,如果我们把网站(特别是访问量高的网站)迁移到独立服务器,这些静态文件将会极大地消耗磁盘读写,同时增大并发请求,容易形成阻塞。
因此我们需要把静态资源(如css、js等)和文件储存放在第三方的云储存上
一,前言: 新浪云计算平台SAE更改了计费策略后,新的计费策略使得网站运行的成本越来越高,于是很多开发者包括本人都准备把应用和网站迁离SAE平台了。然而SAE平台跟普通PHP环境始终有区别。特别是当你的应用使用到SAE的一些云服务的时候,此时要迁移就必须改动下代码。本人将整理下自己迁离的一些经验,分享出来,希望对需要的人有帮助。