手机浏览 RSS 2.0 订阅 膘叔的简单人生 , 腾讯云RDS购买 | 超便宜的Vultr , 注册 | 登陆
浏览模式: 标准 | 列表分类:Linux

linux命令行抓取网页快照 -(xvfb+CutyCapt)

一直以来对于网页缩图,我都是想着用网上现成的工具来解决,网上也有很多网站提供类似服务,其实我也想做这样的功能,但PHP默认的功能只在windows下面才有,系统有一个默认的函数支持网页缩图的。
网上找了找资料,发现linux server下也可以达到这个效果。嗯,是利用xvfb模拟x server,然后利用cutycapt(一款利用qt框架开发的截屏程序)截图,可以存成PNG和JPG等多种格式的图片。

方法有点简单,我是说在ubuntu下面。直接:

XML/HTML代码
  1. apt-get update  
  2. apt-get install xvfb  
  3. apt-get install subversion libqt4-webkit libqt4-dev g++  
  4. svn co https://cutycapt.svn.sourceforge.net/svnroot/cutycapt  
  5. cd cutycapt/CutyCapt  
  6. qmake  
  7. make  

操作完后就可以调用命令行截图了。

XML/HTML代码
  1. xvfb-run --server-args="-screen 0, 1024x768x24" ./CutyCapt --url=http://www.zol.com.cn --out=test.png  

截下来你会发现,图片中的中文是乱码,就象这张<<-点击看大图
然后安装中文字体,最简单的办法就是从windows拷一些ttf的文字到/usr/share/fonts/truetype/目录下。
然后再截图就是现在这样

参考:http://blog.saymoon.com/2009/11/take-snapshot-in-linux-command-line/

PS:过段时间可以尝试考虑用接口+队列,生成相应的命令,然后用shell调用命令行。逐步运行,生成缩图,只是生成的缩图都较大,不敢自己做这样服务,硬盘估计很容易就会满了。

我在VPS上面无法运行xvfb,可能是虚拟机不支持x-server模拟?妖了。。。

Tags: linux, 快照, thumb, xvfb, cutycapt

为什么Linux现在无法吸引年轻开发者

发这个新闻,主要不在新闻的内容,而是在回复。仿佛当年的项庄舞剑,意在沛公差不多。

新闻原文是这样的:

Linux基金会执行董事Jim Zemlin声称Linux的市场地位十分稳固,尽管几位Linux内核的关键维护者已经头发花白。Linux Weekly News的主编Jonathan Corbet在上周举行的Linux基金会协作峰会上挑 明了这一问题,他指出Linux内核团队的年龄一年比一年长,而年轻一代的开发者没有参与进来。为 什么Linux现在无法吸引年轻开发者

著名的内核开发者Andrew Morton也承认,他们越来越老,越来越累,而且没有看到其他人像他们过去那样充满激情的投入到一件事上。他同时指出,这个问题比较复 杂,因为随着内核代码越来越复杂,进入这个领域的门槛也越来越高,参与内核开发的开发者需要有丰富的经验和知识。他表示Linux内核 团队鼓励年轻一代的热心参与。

也有人评论认为,这种状况和学校的计算机教育也有关系,现在的计算机科学教育不再和1980年代和90年代那样关注底层开发和硬件交互,而 是主要学习高级语言如python、.Net、java等等。

编译/solidot

回复是这一条:

XML/HTML代码
  1. 匿名人士 发表于 2010-04-19 13:33:05  
  2.     因为年轻人要买车买房娶老婆……  
极有同感,大家可以去为什么Linux现在无法吸引年轻开发者围观

Tags: 开发者, 内核

a2enmod简介

在ubuntu下面,在偷懒的时候大家都会用apt-get install apache来搞。但搞完之后如何配置却是头疼的问题。

当然如果纯粹是用apt的话,是很方便。比如apt-get  install php5 php5-mysql php5-sqlite一下子就可以解决很多问题。

所以a2enmod的话,可以解决apache中的一些配置问题。比如a2enmod rewrite就可以打开rewrite。当然在配置文件里加loadmodule rewrite.so的话也是可以的,只是a2enmod 会更方便一点。

参考那么多资料,但如果不知道a2enmod怎么用,还可以运行一下。会了解很多可以提供的资料。之所以用a2enmod,是因为他这样可以解决很多关联。不用担心那些文件关联。

运行a2enmod,就可以看到。

Your choices are: actions alias asis auth_basic auth_digest authn_alias authn_anon authn_dbd authn_dbm authn_default authn_file authnz_ldap authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cern_meta cgi cgid charset_lite dav dav_fs dav_lock dbd deflate dir disk_cache dump_io env expires ext_filter file_cache filter headers ident imagemap include info ldap log_forensic mem_cache mime mime_magic negotiation php5 proxy proxy_ajp proxy_balancer proxy_connect proxy_ftp proxy_http rewrite setenvif speling ssl status substitute suexec unique_id userdir usertrack version vhost_alias

有的时候看名字还是可以看出一些问题的。比如你需要缓存图片,就需要headerset,这时候就需要a2enmod headers,就OK了。。

看看:用.htaccess缓存图片 提高博客运行效率

这时候就需要enmod headers了

Tags: apache, a2enmod

Linux操作系统有效防止ARP攻击的设置

一直怀疑服务器被ARP攻击,所以为服务器做了防止ARP的处理。这点linux就不如windows,windows上一装360就可以防范攻击了,但linux就没有类似的功能。找了一些资料,并且问了朋友才了解了一点。
linux上只有做mac地址绑定才可以,但也要交换机上也要做类似的绑定。
但是我没有办法让服务商来帮我做绑定,只能自己做一个简单的绑定了。
最后找了这个简单的资料,随便看看喽。。。。
----start ----
管理员用户登录,打开终端输入
1、#arp -a > /etc/ethers
将ip和mac地址导入ethers
2、#vi /etc/ethers
编辑文件格式,ethers文件内容必须格式如下多余的全部删除,改成形式ip mac
192.168.1.X XX:XX:XX:XX:XX
192.168.1.X XX:XX:XX:XX:XX
...
//注意mac大写,而且没有O只有零,ip和mac空格
3、#vi /etc/rc.d/rc.local //打开并显示 /etc/rc.d/rc.local文件,启动项文件
#i //编辑
//启动的时候执行arp -f按照/etc/ethers 中的内容绑定
在 /etc/rc.d/rc/local 文件中最后加一行
arp -f
ESC退出编辑
:wq //保存编辑
4、#arp -f //执行保存的绑定
(ethers 里不包括网关mac否则会报错)


这只能防住一些arp攻击,如果将网内所有ip mac导入ethers文件,能有效的防止arp攻击
1、nmap -sP 192.168.11.0/24
扫描,结果我的arp表里就有那个网段所有机器的mac,将所有信息复制至/etc/ethers文件
2、3、4同上
--EOF--
OK,我就是这么做的但效果真的一般,将就点喽。想办法在什么时候重装一下系统喽,也只能这样了,现在alexa和PR都降低了。不能再被这种事情折腾了。

Tags: arp, ubuntu

用.htaccess缓存图片 提高博客运行效率

这是一篇来自chinaz.com的文章,因为我有几个博客都采用了wordpress,而且我的手机博客上面有大量的图片,因此,Cache图片就成了重中之重的事情。看到这篇文章我就很开心了。很方便的使缓存过期时间设在了一个月后。很方便,用的也很爽。

原文如下:

WordPress博客里大量的图片会使页面加载速度变得缓慢。 此时访问者需要用更多时间才能打开一个页面。 不过我们可以通过缓存图片来解决这个问题。 当页面第一次被加载时,将所有图片存放在浏览器的缓存池里。 之后访问者再加载该页面时,浏览器就可以从浏览器缓存中获取图片,从而减少页面加载时间。

对Apache服务器上的WordPress博客/网站,可以通过编辑根目录下的.htaccess文件来激活图片缓存功能。 浏览器能够简单读取.htaccess文件的缓存控制头,而缓存头会要求浏览器将图片或其它任何媒体保留2周时间(或者更久),这样浏览器就能够随时调用 图片,直到图片过期。 两周后浏览器重新将过期的图片存入缓存。 万一浏览器缓存被清空,浏览器会从缓存中重新加载图片或其它媒体。

下面就是对如何在WordPress博客/网站上激活图片缓存的过程详解。

如果你希望提高网站的运行效率,就应该启用网络服务器上的图片缓存功能。 详细步骤如下:

注意:做任何改动前请先备份网站数据域.htaccess文件。

1. (在FTP中)打开根目录下的.htaccess文件

2. 在.htaccess文件中加入如下代码:

XML/HTML代码
  1. # Image and Flash content Caching for One Month  
  2. <FilesMatch ".(flv|gif|jpg|jpeg|png|ico|swf)$">  
  3. Header set Cache-Control "max-age=2592000"  
  4. </FilesMatch>  

 

3. 编辑完毕后保存文件。 代码中“max-age”参数的值为2592000(秒),因此图片缓存和Flash内容缓存在浏览器中保留一个月。

如果这个方法能够奏效,你的网站访问速度将会有很大改善。

原文:Improve Performance by Image Caching of Wordpress Blog using htaccess trick译 文

我的文章来自于:http://www.chinaz.com/Webbiz/Exp/0406110L02010.html

很明显的可以看出是针对哪一类的文件进行了header缓存。如果不经常更改,相信这样是足够了。

Tags: htaccess, cache, wordpress