相信很多人都在YY:能不能让80端口分析连接协议,如果是http协议就让服务器交给http服务程序(如Apache.Nginx等)处理,如果是ssh协议就交给ssh服务程序(如OpenSSH Server)处理呢? 答案显然是有的. 首先,配置http服务程序监听8080端口或者让https服务监听8443端口,配置ssh服务程序监听22端口.具体不再赘述,如果这都不懂就不用往下看了,因为肯定会搞不定的. 然后,安装一个叫haproxy的强大工具.步骤如下. 下载源代码: wget http:/…
建议144:一个方法只做一件事 “单一职责原则”(SRP)要求每一个类型只负责一件事情.我们将此概念扩展到方法上,就变成了:一个方法只做一件事. 回顾上一建议的代码,LocalInit和RemoteInit方法是两件事情,但是在同一抽象层次上,在类型这个层次对外又可以将其归并为“初始化”这一件事情上.所以,“同一件事”要看抽象所处的地位. 转自:<编写高质量代码改善C#程序的157个建议>陆敏技…
近期因为项目需求,采购了两台阿里云ECS,选择的系统为CentOS 6.3 X64 安全加固版,额外买了160G的硬盘,应该够应付此项目的需求了. ECS默认已经配置好了sshd服务,可以使用root账号直接登录,但是这通常是不安全的,第一件事就是针对sshd服务进行优化配置. 1.创建常用的账号 在任何Linux相关的描述中,都会说日常使用root操作是很不安全的行为,因此首先创建一个日常使用的账户. useradd gary passwd gary 2.编辑sudoer文件 vim /etc…
if you take nothing else away from this guide other than this, you'll be ahead of many developers. 如果你不离开这个指南,除此之外,你将超越大多数的开发者. 1.array_walk 使用用户自定义函数对数组中的每个元素做回调处理 array_walk(array &$array,callable $callback[,mixed $userdata = NULL]) 将用户自定义函数funcnam…
数据是一个集合,显示也是一个集合.例如一篇<西游记>的文章,所有的文字就是数据集合,展示方式就是显示的集合,可以以书本的形式,也可以以电纸书的形式,更可以用视频的方式展现. 下面是将一个二维数组中的数据显示到TableView控件中. 1.声明一个model类,继承于QAbstractTableModel #define ROW 3#define COL 2 class TableModel : public QAbstractTableModel{ Q_OBJECTpublic: Table…
1..删除掉不需要的用户 查看用户表mysql> SELECT User,Host FROM mysql.user; +------+-------------------------+ | User | Host | +------+-------------------------+ | root | 127.0.0.1 | | | izwz9cl4i8oy1reej7o8pmz | | root | izwz9cl4i8oy1reej7o8pmz | | | localhost | | r…
Linux Mint 17 Qiana Cinnamon Linux Mint 17已经发布,定名为Qiana.Mint是Linux最佳发行版之一,它定位于桌面用户,关注可用性和简洁.它携带了风格迥异的桌面环境,如Mate以及Cinnamon,并基于不同的发行版,如Ubuntu或Debian. 在本文中,我们使用的是Linux Mint 17的cinnamon版本.要获取更多关于Cinnamon版本的信息(包括下载链接),可以访问 - http://linux.cn/article-3260-1…
我们项目启动的时候要弹出一个广告窗口,很简单的一个功能,服务器的判断一下满足条件,即返回数据,客户端判断数据部位NULL,则弹出弹窗但是老板说,这个要时间短弹出,每天的中午12点到下午2点不能弹出来这这这,有点坑我们吧,每天存一个key,有点坑吧仔细想想,没有必要啊,这就是考验我们对时间的操作,代码实现如下: 代码实现 #pragma mark -- 判断是否弹出广告 - (BOOL)isLoadAdvertIn { //当前时间戳 NSTimeInterval interval = [[NSD…
与R语言纠缠了一个星期,从快速上手的暗暗得意,到之后某些细节的纠结烦躁,过山车式体验中,我逐渐才认识了真实的R语言. 期间遇到两个很烦恼的问题,一个是让人烦躁抓狂,另一个是无意发现的重大错误. 1.      令人抓狂的rownames 若数据矩阵datamatrix如图1,无列名和行名及表头.若c1~c4分别为colnames,而r1~r5为rownames,表头为A. 图1:datamatrix 如何添加c1~c4?r1~r5? coln = c(”c1”,”c2”,”c3”,”c4”) r…
1.标准输入.输出与重定向 scanf()和printf()分别为标准输入输出.默认的会从键盘得到数据,在显示器输出数据,是fscanf()和fprintf()函数的特例. 我们也能够用重定向来改变默认的输入输出,使得程序从文件得到输入的数据,并把输出的数据写入指定的文件. 如:./hello   < hello1.txt   > hello2.txt 可是假设程序出错.也会将错误信息写入指定的那个文件,而不是显示在显示器上. 2.标准错误 fprintf(stdout,...) //标准输出…