怎样使用yum-cron为CentOS自动更新重要的安全补丁

2017年4月19日 由 Amon 没有评论 »

参考:https://linux.die.net/man/8/yum-cron
参考:http://www.linuxprobe.com/centos-rhel-update.html
参考:https://solarhell.com/post/2016/02/yum-cron

【安装yum-cron】

yum install yum-cron -y

【设置yum-cron】

打开 /etc/yum/yum-cron.conf ,设置以下内容:

update_messages = yes # 表明自动更新命令行应该像这样:yum --security upgrade
download_updates = yes
apply_updates = yes

默认情况下,cron 任务被配置成了立即下载并安装所有更新,但是我们可以通过在 /etc/sysconfig/yum-cron 配置文件中把下面两个参数改为yes,从而改变这种行为。

CHECK_ONLY=yes # 不要安装,只做检查(有效值: yes|no)
DOWNLOAD_ONLY=yes # 要求 CHECK_ONLY=yes(先要检查后才可以知道要下载什么)

【启用yum-cron】

打开并启用yum-cron 服务:

CentOS/RHEL 7 :

systemctl start yum-cron
systemctl enable yum-cron

On CentOS/RHEL 6 :

service yum-cron start
chkconfig --level 35 yum-cron on

-bash: killall:: command not found

2017年4月18日 由 Amon 没有评论 »

报错:

-bash: killall:: command not found

参考:https://www.tutugreen.com/wordpress/fix-centos7-killall-command-not-found/

yum install psmisc

Psmisc软件包包含三个帮助管理/proc目录的程序。

安装下列程序: fuser, killall,pstree和pstree.x11(到pstree的链接)

fuser 显示使用指定文件或者文件系统的进程的PID。

killall 杀死某个名字的进程,它向运行指定命令的所有进程发出信号。

pstree 树型显示当前运行的进程。

pstree.x11 与pstree功能相同,只是在退出前需要确认。

怎样编译安装php7的swoole支持

2017年4月18日 由 Amon 没有评论 »

官网:http://www.swoole.com/

文档:https://github.com/swoole/swoole-src

参考:http://www.cnblogs.com/piwefei/p/5620284.html
参考:https://segmentfault.com/a/1190000004122677
参考:https://www.iamle.com/archives/1989.html

下载源码编译安装:

wget -c https://github.com/swoole/swoole-src/archive/swoole-1.7.21-stable.tar.gz && tar zxvf swoole-1.7.21-stable.tar.gz && cd swoole-src-swoole-1.7.21-stable/
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config
make && make install

git下载源码编译安装:

git clone https://github.com/swoole/swoole-src.git && cd swoole-src
phpize
./configure
make && make install

如果没有安装phpize,执行命令安装:

yum install php-devel

成功编译后,输出:

Installing shared extensions:     /usr/local/php/lib/php/extensions/no-debug-zts-20151012/
Installing header files:           /usr/local/php/include/php/

部署:

打开,/usr/local/php/etc/php.ini ,加入:

extension=swoole.so

查看是否成功加载了swoole:

/usr/local/php/bin/php -m | grep swoole

输出:

swoole

或者:

php -m

输出:

[PHP Modules]
...
swoole
...

[Zend Modules]

查看swoole版本:

php --re swoole|grep VERSION

输出:

    Constant [ string SWOOLE_VERSION ] { 2.0.7 }

怎样整合Dedecms和Sphinx

2017年4月17日 由 Amon 没有评论 »

参考:http://blog.csdn.net/wang_xingang/article/details/5217675
参考:http://blog.csdn.net/wang_xingang/article/details/5217675
参考:http://www.cnblogs.com/liuguanghuiyes/archive/2012/06/01/2531330.html
参考:http://www.bkjia.com/dedecms/373111.html
参考:http://www.51ou.com/browse/jianzhan/7907.html
下载:http://download.csdn.net/download/kuailedetianshi/7755497

CSS Sprites与base64图片编码的比较

2017年4月17日 由 Amon 没有评论 »

CSS中,background可以设置对象的背景样式。如颜色或者使用一张图片代替,今天我要多说两句的就是使用一张图片的参数:image。准确的来说应该是background-image。我们可以这样用它:

body{
background-image: url(....jpg);
}

也可以直接使用background 代替:

body{
background: url("....jpg");
}

css显示图片分3种:
1. 单纯的显示一个图片;
2. CSS Sprites,也就是说把若干小图片合成一个大图片,然后通过background的postion参数实现效果,
3. Inline images。这个方法不适用于IE浏览器。

CSS Sprites是一种把所有的图片都以base64编码以源代码的形式写在CSS文件里,格式是这样的:data:[][;base64],

data:URL标签是在1995年第一次提出,按RFC2397规范( http://tools.ietf.org/html/rfc2397 )的描述:

allows inclusion of small data items as ‘immediate’ data.

(允许在页面中包含一些小的即时数据)

如一个内嵌的的图片可以这样引用:

{  background-image:url(data:image/gif;base64,R0lGODlhCAAIAJEAAOnp6eTk5O7m8AAAACH5BAEAAAIALAAAAAAIAAgAAAINjAMJh2q6DnxOVsqmLQA7);  }

这段代码可以在firefox浏览器运行。这行代码的意思是,gif格式的以base64编码成最后的字符串的图片应用为背景。样式应用的结果是一种斜条纹状的背景。

参考:http://tjrus.com/blog/base64-vs-css-sprites-battle-for-performance
参考:http://stackoverflow.com/questions/1124149/is-embedding-background-image-data-into-css-as-base64-good-or-bad-practice

CSS Sprites与base64图片编码的比较

在前端页面性能优化的时候,不可避免地会遇到这个问题。我们又该如何选择呢?

情景:有数量相当的小size图片

方案1:使用CSS Sprites合并为一张大图
方案2:使用base64直接把图片编码成字符串写入CSS文件

针对方案1:

1.兼容性比较好
2.图片比较复杂时构造体积较小
3.多处重用时无需重复图形内容
4.没有base64编码成本,降低图片更新的维护难度。(但注意Sprites同时修改css和图片某些时候可能造成负担)

针对方案2:

1.无额外请求
2.对于极小或者极简单图片来说数据很少
3.可以被gzip。(通过gzip对base64数据的压缩能力通常和图片文件差不多或者更强)
4.降低css维护难度
5.可像单独图片一样使用,比如背景图片重复使用等
6.没有跨域问题,无需考虑缓存、文件头或者cookies问题。

方案1+方案2能否实现呢?思考了下,不可以。