kurrunk

不停转圈的人

文章关键字 ‘php’

让Linux中的壁纸自动更新

我的linux桌面一直是黑漆漆的,有一年多没用壁纸了,今天心血来潮了。

1x.com的图片很漂亮,格调简单。
这文章写的就是怎么把1x.com的美图自动设置为自己的桌面,而且这是自动的。
有一点需要注意,1x.com的图片尺寸有限,如果你的显示分辨率大了可能显示效果不会很好(我的800×600显示效果还不错)。

软件环境是:archlinux+openbox+feh。

写个PHP脚本

<?php
error_reporting(1);
require_once 'simplepie.inc';
$feed = new SimplePie('http://1x.com/rss/rss.php', 'cache');
$i=0;
$max = $feed->get_item_quantity();
$curl = curl_init();
while($i<$max){
$item=$feed->get_item($i);
$url=$item->get_permalink();
$id=ereg_replace("^[^0-2|4-9]+D","",$url);
$fp = fopen('tmp-thumb.jpg', "w");
curl_setopt($curl, CURLOPT_FILE, $fp);
curl_setopt($curl,CURLOPT_URL,"http://1x.com/pictures/$id-thumb.jpg");
curl_exec($curl);
fclose($fp);
$xy= getimagesize('tmp-thumb.jpg');
if($xy[0]>$xy[1]){
$fp = fopen('/home/kurrunk/kurrunk.well/1x.jpg', "w");
curl_setopt($curl, CURLOPT_FILE, $fp);
curl_setopt($curl,CURLOPT_URL,"http://1x.com/OEfullSize/$id-fullsize.jpg");
curl_exec($curl);
fclose($fp);
break;
}
$i++;
}
curl_close($curl);
?>

其中用到了rss解析工具“simplepie”,还有curl。
把脚本保存到一个目录下。

写个sh用来执行php脚本,并更新桌面

shell文件的内容是:
export DISPLAY=:0.0
feh --bg-scale ~/kurrunk.well/1x.jpg
php ~/dwell/uw.php
上面的路径根据具体情况设置。

增加可执行属性:
$chmod +x kurrunk.scripts/well.sh

加入计划任务中

创建cron文件,内容为:
0 */2 * * * kurrunk.scripts/well.sh这里任务间隔是2个小时。

激活crontab:
$sudo -u kurrunk crontab kurrunk.scripts/well.cron

查看任务是不是加入了:
$sudo -u kurrunk crontab -l

开机更新壁纸

这个如果不设置的话,初开机时可能是没有壁纸的。

在.config/openbox/autostart.sh加入:
kurrunk.scripts/well.sh
如果要求不高的话也没必要设置计划任务,开机时更新一次就好了。

题外话:本来想用python写的,两分钟过去我没有反应,明白了自己已经把python忘的差不多了。

虚拟主机中php和mysql的时区设置

备案是不太容易的,我去年夏天提交的申请到现在也没有结果,又碰到前几天的“网络严打”,我的几个不低俗的网站也不得不关张大吉,被迫开始了国外主机的试探。

使用国外主机碰到一个PHP、MYSQL的时区问题。不处理的话显示的时间都是美国时间。

PHP 5.1 以上提供了专门的函数切换时区:

date_default_timezone_set(‘Asia/Shanghai’);

Mysql可以通过以下查询语句实现时区切换:

set time_zone = ‘+8:00′;

我经过这样处理后基本OK了,美中不足的是MYSQL的timestamp字段还是老样子。

Debian中安装lighttpd+php+mysql+Drupal

在Linux中架设网站其实不难,在Debian中更简单。

Linux操作系统用Debian,http服务器软件用lighttpd,它是个轻量级的服务器软件,如今很多酷站都有它的身影,动态语言用php,数据库用mysql,CMS用Drupal。

安装:

#apt-get install lighttpd php5-cgi php5-mysql mysql-server php5-gd

php5-gd是绘图库

配置:

#vi /etc/php5/cgi/php.ini

找到”cgi.fix_pathinfo=0″改为”cgi.fix_pathinfo=1″(文档中部)

#vi /etc/lighttpd/lighttpd.conf

更改网站目录:server.document-root =”/home/hu/www/endd.cn”

server.modules项增加一行,内容为:

“mod_fastcgi”

文件中添加:

fastcgi.server = (“.php” => ((
“bin-path” => “/usr/bin/php5-cgi”,
“socket” => “/tmp/php.socket”
)))

因为我们的网站不喜欢.php?p=**格式的URL,所以还需要把”mod_rewrite”前的注释去掉。
在文件中加内容:

fastcgi.server=( “.php” => ((
“bin-path” => “/usr/bin/php5-cgi”,
“socket” => “/tmp/php.socket”
)))
url.rewrite-final =(
“^/([^.?]*)\?(.*)$” => “/index.php?q=$1&$2″,
“^/([^.?]*)$” => “/index.php?q=$1″
)

安装drupal:

去官网下载软件包:http://www.drupalchina.org

#tar zxvf drupal-6.1.tar
#mv drupal-6.1/* /home/hu/www/endd.cn
#mysqld &
#/etc/init.d/lighttpd start

访问http://localhost就可以看到drupal的安装界面了,一路下一步一个功能完备的网站就OK了!