当前分类:我爱互联网
2010.10.26
我爱互联网
4,555 views
我知道现在大多数主题都自带了分页功能,而且就算没有分页功能,还有插件可以实现这个效果,比如大多数人都在使用的pagenavi,我也安装过这个插件,后来删掉了,这个插件不是万能的,很多时候设置麻烦不说,还对很多主题无效。WordPress也自带的分页功能,但是太那个啥了。。。而且还不好看,刚才琢磨了一下,终于把自己的页面分页效果改掉了,一下觉得好看很多,修改起来其实很简单,只需要修改三个地方:function,css,以及你需要显示的位置文件。
首先修改function.php文件,如果你的文件没有自带分页函数,那么直接添加就好了,如果已经有了,可以用以下函数覆盖掉:
//分页
function kriesi_pagination($query_string){
global $posts_per_page, $paged;
$my_query = new WP_Query($query_string ."&posts_per_page=-1");
$total_posts = $my_query->post_count;
if(empty($paged))$paged = 1;
$prev = $paged - 1;
$next = $paged + 1;
$range = 6; // only edit this if you want to show more page-links
$showitems = ($range * 2)+1;
$pages = ceil($total_posts/$posts_per_page);
if(1 != $pages){
echo "<div class='pagination'>";
echo ($paged > 2 && $paged+$range+1 > $pages && $showitems < $pages)? "<a href='".get_pagenum_link(1)."'>最前</a>":"";
echo ($paged > 1 && $showitems < $pages)? "<a href='".get_pagenum_link($prev)."'>上一页</a>":"";
for ($i=1; $i <= $pages; $i++){
if (1 != $pages &&( !($i >= $paged+$range+1 || $i <= $paged-$range-1) || $pages <= $showitems )){
echo ($paged == $i)? "<span class='current'>".$i."</span>":"<a href='".get_pagenum_link($i)."' class='inactive' >".$i."</a>";
}
}
echo ($paged < $pages && $showitems < $pages) ? "<a href='".get_pagenum_link($next)."'>下一页</a>" :"";
echo ($paged < $pages-1 && $paged+$range-1 < $pages && $showitems < $pages) ? "<a href='".get_pagenum_link($pages)."'>最后</a>":"";
echo "</div>n";
}
}
接下来添加CSS样式,这个熟练CSS的可以自己DIY了:
.navigation {
float:right;
width:700px;
margin: 10px 0 0 0;
text-align:right;
}
.pagination{
line-height:25px;
}
.pagination span, .pagination a{
font-size:12px;
margin: 2px 6px 2px 0;
background:#fff;
border:1px solid #e5e5e5;
color:#787878;
padding:2px 5px 2px 5px;
text-decoration:none;
}
.pagination a:hover{
background: #0196E3;
border:1px solid #fff;
color:#fff;
}
.pagination .current{
background: #0196E3;
color:#fff;
font-size:12px;
padding:2px 5px 2px 5px;
}
然后就是在你要显示分页的位置调用上面的函数了:
<div class="navigation"><?php kriesi_pagination($query_string); ?></div>
好了,完成了,最后的样子就是本博客所要显示的样子,这个样式和博客主题挺搭配的,因为我的博客文章不够,所以有些没有显示出来,我修改了每页显示文章数目,让页数多一点以后,显示的最后效果就是这样的了:

有人说创作是从模仿开始的,所以以上这一切都不是100%的原创,一点一点的模仿、修改和积累,总有一天我们也能做出自己全部原创的主题的。
2010.10.24
我爱互联网
1,811 views
www.swpubar.net 的域名一直没怎么很好的利用,只是用来给油吧做引导页在用,当初在注册这个域名的时候本身也没想到用来干嘛,最大的初衷是为了防止被抢注册。
以前的引导页用了快半年了,一直不换也没什么意思,晚上做了几个小时,利用了WordPress的一些东西,借鉴了几个主题的CSS做了一个新的引导页。看似几个简单的静态页面,也做了这么长时间,看来做网页也不是那么轻松的事情,很多代码要反复修改才可以拿得出手,还不知道在多个浏览器和分辨率下是否兼容,应该没有太大的问题。
CSS还没学好,有些调用都还不是很熟练,只有在html中直接定义样式,很麻烦,也让html代码看起来比较臃肿,纯css+html的网页其实还是很好看的,只是更新比较麻烦,还是要把动态网页语言学好了才能做出更好的网页出来。

2010.10.23
我爱互联网
2,078 views
unixbench是一个比较不错的测试VPS性能的小软件,可以根据多项参数最后给你一个最后得分。我用的是4.1版,最新版本是5.1.2,但是我运行失败,有VPS的不妨去测试一下,看下你有多少分,最后得分只是一个参考,根据大家的VPS得分总结出的结论就是分数低于100的基本就属于很差的了。下面说下使用方法:
首先下载unixbench:http://www.bujinshuo.com/soft/unixbench-4.1.0-wht.tar.gz
[root@bujinshuo]# wget http://www.bujinshuo.com/soft/unixbench-4.1.0-wht.tar.gz
[root@bujinshuo]# tar xzf unixbench-4.1.0-wht.tar.gz
[root@bujinshuo]# ls
unixbench-4.1.0-wht-2 unixbench-4.1.0-wht.tar.gz
[root@bujinshuo]# cd unixbench-4.1.0-wht-2/
[root@bujinshuo unixbench-4.1.0-wht-2]# make
如果遇到 Error: Please install /usr/bin/time. 错误提示
centos/fedora 下运行 yum install time
ubuntu/debian 下运行 apt-get install time
[root@bujinshuo unixbench-4.1.0-wht-2]# ./Run
下面是我的两个VPS测试的结果。
第一个是本博客的openvz VPS最后得分,用4.1测试出来的分数中算是不错的了。

第二个是xen vps的,分数居然少了那么多,但是母鸡配置要比第一个的好一些,不知道为什么分数反而要低些。

2010.10.14
我爱互联网
3,639 views
如果你还在中国,如果你还关注和中国有关的一切,那么你就必须要做好应对发生在中国网络里的一切可能发生的事情。
现在都说国内网络环境糟糕透顶,完全没有言论自由,于是很多人都把自己的网站搬到了国外,以为这样就可以逃脱中国的约束,其实这是不可能的,除非你的网站访客对象不是中国人。中国的GFW的力量是无比强大的,如果你的网站不符合国内的要求,那么将被挡在墙外,他们可以封掉你的IP,也许你可以再换一个服务器或者再换一个IP,但是这样继续被封的可能性几乎为100%,而更糟糕的是他们还可以封掉你的域名,如果你更换域名,你将损失大量的访客会员流量,你的网站从这个时候开始基本就已经死了。
随着某人获得炸药奖,国内网络言论环境再次遭到打击,国家加大了网络审查力度,1984BBS只是万千网站中的一个代表,如果你不想被请去喝茶,不想你的网站被关闭,那就必须要控制好网站的言论,就算你的服务器在国外,也不能做的太过分,否则在强大的GFW面前,你的力量微不足道。
如果你不想有一天你的域名再也无法访问,你的网站再也打不开,你的网站数据再也找不到,那么从现在起你就要养成习备份的习惯,定期对你的网站和数据库做好备份,以防万无一失。
刚刚对swpubar做了备份,在VPS上打包压缩就用了15分钟左右,打包后的文件也有1个多G,这就是一个网站的全部了。我把swpubar这个VPS上的网站文件和数据库备份到我的博客VPS上来了,以防万一,两个VPS之间的传输速度真的不错,10M/S,很快就下载完毕了。
提供一个备份数据库的脚本,备份网站文件就在脚本里添加tar命令就可以了。
#!/bin/bash
/usr/local/mysql/bin/mysqldump -u用户名 -p密码 --databases 数据库名 > /home/www/db-backup/vps-$(date '+%Y%m%d').sql
rm -rf /home/www/db-backup/vps-$(date +%Y%m%d -d "7 days ago").sql
然后crontab –e添加计划任务,比如每天凌晨四点执行上面的脚本:
00 04 * * * /home/www/backup-db.sh
最后奉劝大家不要在自己的常用空间上搭建TWIP等代理程序,以及twitter的API,会被无情的封禁IP的,后果就不说了。

2010.10.08
我爱互联网
3,711 views
SSH代理翻墙浏览被屏蔽的网站,速度快,安全性高,所以也比较受欢迎,购买VPS一般都可以用root账号SSH代理出去。但是我想再增加几个账号出来给别人用,又必须要考虑VPS上系统的安全性,虽然这个VPS上只有几个博客,但毕竟都是大家的心血,所以还是要做好安全措施的。今天在网上看到一个方法,据说可以很安全的增加SSH账号,这些账号只能用来代理上网,先来看下方法:
vi /bin/usessh.sh #创建脚本
#!/bin/sh #编辑脚本
echo “”
echo “ ********************************************************************”
echo “ * welcome to http://imldj.info- SSH Tunnel press a key to exit. *”
echo “ ********************************************************************”
echo “”
read x
exit
:wq #保存退出!
groupadd imusessh
chmod 755 /bin/usessh.sh #加权限
useradd usessh -g imusessh -s /bin/usessh.sh #加usessh用户
passwd usessh #设置密码。
现在来看下上面的脚本,这个脚本用到了echo循环,实际作用就是当你新建的的账号试图SSH登陆到你的VPS的时候,会进入这个循环,一直显示这段文字,按下任意键则会推出登陆,后面的就是赋予脚本全新和增加用户了。我不知道这个方法的安全性,新建账号利用putty登陆VPS的确会进入循环然后退出,然而利用其它工具登陆呢?不得而知,暂时把这个方法贴出来,也顺便请高手指点一下这个方法的漏洞。还看到有其它方法增加只能代理上网的SSH账号,但是很多方法都会影响到root的管理权限。

2010.10.07
我爱互联网
3,525 views
早就说要换主题了,但是一直没有找到自己满意的,很多主题都很漂亮,但是总有些细节不能让自己满意,说要自己制作主题也说了很久了,但迟迟没有动手,为什么呢?因为技术不够。。。
PHP倒是比较简单一点,函数调用多用几次就会熟练很多,主题大部分都是在调用WordPress固有的函数,对我来说比较麻烦的其实是CSS,不可否认CSS很简单很直白,但是对于我这样没有美术细胞的人来说要完全设计一个整体页面是非常困难的,尤其是颜色的搭配上,我估计我做出来的主题先不说其它方面,就整体颜色搭配都肯定很难协调 - -||
跑题了,现在这个主题是谁的我都不记得了,很少去关注主题的作者,原主题的作者看见我这句话会不会想杀了我,哈哈。其实我比较喜欢这个主题,很白,很多留白,简洁,色彩也很和谐,因为很喜欢所以我就把这个主题稍微做了些改动,字体改为了全站微软雅黑+阴影显示,我觉得看起来比较有质感。
这款主题没有图片延迟加载功能,于是我手动给主题添加了一下。
首先下载jquery.lazyload.zip解压。
得到两个文件,一个是grey.gif,另外一个是jquery.lazyload.js,图片其实就是一个灰点。
把图片上传到主题的img文件夹,把jquery.lazyload.js上传到你主题的JS文件夹或者根文件夹,然后修改header.php在</head>标签前(最好在<?php wp_head(); ?>语句前)添加如下代码:
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<script type="text/javascript" src="<?php bloginfo('template_directory');?>/jquery.lazyload.js"></script>
<script type="text/javascript">
$(function() {
$("img").lazyload({
placeholder : "<?php bloginfo('template_directory');?>/images/grey.gif",
effect : "fadeIn"
});
});
</script>
大概就是这样了,现在的主题已经实现了图片延时下载了。
最近发现jQuery其实是一个好东西了,顺便分享一下jQuery学习手册。
2010.10.04
我爱互联网
2,363 views
记录一些在使用VPS中常常涉及到的命令和方法,方便自己查询,不定期更新内容,欢迎交流。
一、Linux下常用命令
目录操作:
rm -rf mydir /*删除mydir目录*/
cd mydir /*进入mydir目录*/
cd - /*回上一级目录*/
cd .. /*回父目录,中间有空格*/
cd ~ /*回根目录*/
mv tools tool /*把tools目录改名为tool */
ln -s tool bac /*给tool目录创建名为bac的符号链接,最熟悉的应该就是FTP中www链接到public_html目录了*/
cp -a tool /home/vpser/www /*把tool目录下所有文件复制到www目录下 */
文件操作:
rm go.tar /* 删除go.tar文件 */
find mt.cgi /* 查找文件名为mt.cgi的文件 */
df –h /* 查看磁盘剩余空间,好像没这个必要,除非你太那个了 */
解压缩:
tar xvf wordpress.tar /* 解压tar格式的文件 */
tar -tvf myfile.tar /* 查看tar文件中包含的文件 */
tar cf toole.tar tool /* 把tool目录打包为toole.tar文件 */
tar cfz vpser.tar.gz tool /* 把tool目录打包且压缩为vpser.tar.gz文件,因为.tar文件几乎是没有压缩过的,MT的.tar.gz文件解压成.tar文件后差不多是10MB */
tar jcvf /var/bak/www.tar.bz2 /var/www/ /*创建.tar.bz2文件,压缩率高*/
tar xjf www.tar.bz2 /*解压tar.bz2格式*/
gzip -d ge.tar.gz /* 解压.tar.gz文件为.tar文件 */
unzip phpbb.zip /* 解压zip文件,windows下要压缩出一个.tar.gz格式的文件还是有点麻烦的 */
下载:
wget http://soft.vpser.net/web/nginx/nginx-0.8.0.tar.gz
/*下载远程服务器上的文件到自己的服务器,连上传都省了,服务器不是100M就是1000M的带宽,下载一个2-3兆的MT还不是几十秒的事 */
wget -c http://soft.vpser.net/web/nginx/nginx-0.8.0.tar.gz
/* 继续下载上次未下载完的文件 */
进程管理:
ps -aux /*ps 进程状态查询命令*/
ps命令输出字段的含义:
[list]
[*]USER,进程所有者的用户名。
[*]PID,进程号,可以唯一标识该进程。
[*]%CPU,进程自最近一次刷新以来所占用的CPU时间和总时间的百分比。
[*]%MEM,进程使用内存的百分比。
[*]VSZ,进程使用的虚拟内存大小,以K为单位。
[*]RSS,进程占用的物理内存的总数量,以K为单位。
[*]TTY,进程相关的终端名。
[*]STAT,进程状态,用(R--运行或准备运行;S--睡眠状态;I--空闲;Z--冻结;D--不间断睡眠;W-进程没有驻留页;T停止或跟踪。)这些字母来表示。
[*]START,进程开始运行时间。
[*]TIME,进程使用的总CPU时间。
[*]COMMAND,被执行的命令行。
[/list]
ps -aux | grep nginx /*在所有进程中,查找nginx的进程*/
kill 1234 /*1234为进程ID,即ps -aux 中的PID*/
killall nginx /*killall 通过程序的名字,直接杀死所有进程,nginx为进程名*/
Vim操作:
移动类的:
h/j/k/l: 左/下/上/右 移一格
w : 向后词移动 (前面加数字移动多少个词)
b : 向前词移动 (前面加数字移动多少个词)
e : 向后移到词末
ge : 向前移到词末
$ <End> : 行末
0 <Home> : 行首
tx : 向右查找本行的x并移到那儿(大写时向左)
33G : 移到文件的第33行
gg : 文件首行
G : 文件尾行
33% : 文件的33%处
H/M/L : 屏幕的首/中/尾行
zt/zz/zb : 当前行移到屏幕的首/中/底部
跳转:
" : 回到跳转来的地方
CTRL-O : 跳到一个 “较老” 的地方
CTRL-I <Tab> : 则跳到一个 “较新” 的地方
查找:
/ : 向下查找(后加关键字)
? : 向上查找(后加关键字)
n : 下一条符合的记录
编辑:
i : 转换到插入模式
x : 删除当前字符
. : 重复最后一次的修改操作(同PS里ctrl+f执行滤镜)
u : 撤销操作
CTRL-R : 重做
p : 将删除的字符插入到当前位置(put)
退出保存:
:q : 退出
:q! : 不保存退出
ZZ : 保存后退出
:e! : 放弃修改重新编辑
二、nginx下phpwind伪静态
location / {
rewrite ^(.*)-htm-(.*)$ $1.php?$2 last;
rewrite ^(.*)/simple/([a-z0-9_]+.html)$ $1/simple/index.php?$2 last;
}
三、nginx下301重定向方法
进行了301重定向,把www.bujinshuo.com和bujinshuo.com合并,并把之前的域名也一并合并.方法是判断nginx核心变量host(老版本是http_host):
server {
server_name www.bujinshuo.com bujinshuo.com ;
if ($host != 'www.bujinshuo.com' ) {
rewrite ^/(.*)$ http://www.bujinshuo.com/$1 permanent;
}
...
}
输入指令~
/usr/local/nginx/sbin/nginx -t
提示:
the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
configuration file /usr/local/nginx/conf/nginx.conf test is successful
测试成功~ 重启nginx~ 输入指令~
/usr/local/nginx/sbin/nginx -s reload
四、数据库导入导出
1、直接在phpmyadmin中导入和导出
2、/usr/local/mysql/bin/mysql -u用户名 -p密码 -h主机 数据库 < 路径
3、/usr/local/mysql/bin/mysqldump -u 用户名 -p 数据库名 > XX.sql
五、通过SSH命令下载文件夹及整个目录的方法
原先数据无法打包,可以通过以下命令在自己VPS的SSH执行以下相对 命令来完成数据转移
wget -nH --cut-dirs=* -m --ftp-user=* --ftp-password=* ftp://*.*.*.*/*
-nH:不创建以主机名命名的目录。
--cut-dirs:忽略主机上的目录层数。
-m:下载所有子目录并且保留目录结构。
--ftp-user:FTP用户名
--ftp-password:FTP密码
ftp://*.*.*.*/*:FTP主机地址。最后可以跟目录名来下载指定目录
例如:wget -nH --cut-dirs=1 -m --ftp-user=ebandao --ftp-password=123456 ftp://bujinshuo.com/123/
六、linux SSH解压文件权限问题
很多在linux SSH下解压下载的文件通常会被全部更改为755或者其他权限
现在的解决办法是进入要更改的文件的目录
执行:chown -R admin:users *
然后全部的目录owner会被更改为admin
注意:admin 可以更改为你认为正确的使用者
应该权限属性可以在FTP正常更改了
2010.09.28
我爱互联网
2,462 views
之前一直没有给VPS环境安装eaccelerator,后来看见很多人都说eaccelerator很好,我查看了一下有关eaccelerator的信息,想着是应该给系统装上这个东西。百度了一下eaccelerator,得到以下信息:
eAccelerator是一个自由开放源码php加速器,优化和动态内容缓存,提高了php脚本的缓存性能,使得PHP脚本在编译的状态下,对服务器的开销几乎完全消除。 它还有对脚本起优化作用,以加快其执行效率。使您的PHP程序代码执效率能提高1-10倍
按照说明文档安装了eaccelerator,然后重启web服务器,刷新了一下我的博客,结果显出502 bad gateway了,并且在启动服务器以后显示如下提示:
the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
configuration file /usr/local/nginx/conf/nginx.conf test is successful
Nginx program is reloding!
Shutting down MySQL. SUCCESS!
Starting MySQL. SUCCESS!
Shutting down php_fpm /usr/local/php/sbin/php-fpm: line 69: kill: (15830) - No such process
................................... failed
Starting php_fpm done
看来刚刚安装的eaccelerator有问题,于是查看php.ini,看见eaccelerator的配置文件和Zend Optimizer的配置文件放在一起,根据网上的说明,调换了两个配置文件的说明,这里很神奇的是我发现了两份完全一样的eaccelerator的配置文件,不知道是什么原因造成的,我就删除了其中一份,然后再重启服务器,依旧错误502,博客还是打不开,又在网上搜索了一下有关信息,说可能是php-fpm的进程数有点少,于是我修改php-fpm.conf 里面的max_children 后面的值,以前编译的是5,我改成了10,再次重启系统,提示正确了。
the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
configuration file /usr/local/nginx/conf/nginx.conf test is successful
Nginx program is reloding!
Shutting down MySQL. SUCCESS!
Starting MySQL. SUCCESS!
Shutting down php_fpm . done
Starting php_fpm done
中间查找原因的时候很麻烦,不知道问题出在哪里,都想把VPS上的所有网站内容备份然后再重装系统,毕竟这上面还有一些朋友的网站,要是他们睡一觉起来发现自己的网站不能访问,还不杀了我啊,还好最后问题都解决了,eaccelerator也成功安装了,对应的缓存文件夹也顺利生效并生成了缓存文件,可以睡觉了。
2010.09.07
我爱互联网
2,634 views
很多朋友说我的博客上面的相册圈很好玩,想要我分享给他们,我很乐意分享,但是有一个问题一直没有解决,这让我也分享不出手。进入相册圈以后上面有一个 back to home 的链接,我没有修改,这个链接是链接到一个日本的网站,我就想把这个修改了再分享给大家。
这个相册圈是一个swf+xml来实现效果的,xml主要控制图片描述和调用,swf则是效果展示,xml直接编辑就可以了,没什么好修改的,最需要修改的是swf。这个swf最不能容忍的一处就是back to home的链接,外面的文字都好说,只要把链接修改了,一切就都很好处理了。因为没有fla文件,所以只有把swf反编译导出为fla再修改。再我尝试修改了20多次以后还是失败了,虽然链接被我修改过来了,但是里面的图片无法显示了,修改完fla文件导出为swf的时候就提示我好几处错误,我没在意,一直傻傻的修改调试,两个小时以后终于放弃了,修改不成功。后来一直想不通,为什么我修改一个链接会出那么多错误出来,于是重新导出fla,不作任何修改就直接再导出为swf,竟然一样会出问题,也就是说问题不在我的修改上,而在导出的文件上,我瞎忙了两个多小时。
反编译swf我也不知道用什么软件最好,闪客精灵、闪客之锤都用过了,还是不能完美的把swf导出为fla,不知道是我的人品有问题还是技术有限。大家要是有什么好的反编译软件不妨给我推荐一下,争取把这个相册做的完美一点。
这里我把这个相册分享出来,有兴趣的可以拿走,图片的调用修改xml文件就可以了,你看着照片名字和xml修改,应该都没什么问题,至于flash的修改,就要看大家了,不介意那个链接的话可以直接使用,如果你能完美导出fla的话,flash页面上的文字按钮都可以随意修改了。

点击下面下载文件,为了节约下载流量已删除大部分原相册图片。
2010.08.29
我爱互联网
5,396 views
现在好像还是有不少大学都在用锐捷认证吧,我们学校校园网也用的是这个。对于校园网我是比较喜欢的,因为我不玩游戏,校园网的限制对我来说影响不大,而且下载比较热的资源能有10M/S的速度,更加让我喜欢,不过白天不让看视频的确有一点点遗憾,虽然用搜狗浏览器加速后能看了,但是我对搜狗浏览器实在无爱,所以也就宁愿不看了,反正我也很少看视频。不过锐捷有个很烦人的地方,就是禁止双网卡,这是为了防止一人多账号,影响学校收入 - -||,不过这也影响到我试用VPN上twitter,登陆VPN一分钟就会被强制下线,说我在使用双网卡。
今天无聊就想能不能把锐捷双网卡的验证给去掉,在网上查了一下资料,发现有方法可以实现,方式是针对锐捷老版本的,我用的4.10版,我也测试了一下。
首先要准备一个软件UltraEdit,下载安装这个以后,用这个软件打开8021x.exe,是十六进制的,查找60EA00006A06,修改为60EAFFFF6A06,就是把中间的四个0全部换成了F,然后保存,当然这个过程需要关闭锐捷,否则无法直接保存。

做以上修改只是把提示时间更改了,没有修改前的提示时间为1分钟,修改以后提示时间为45钟以后了,这个应该勉强可以接受了吧,只要不是用VPN玩网络游戏。
保存之后重新连接锐捷,然后建立VPN虚拟拨号连接,我遇到的情况就是VPN一直无法登陆,以为是我测试的这个VPN有问题,于是又换了一个VPN,还是不行,无法登陆。

最终结果就是以失败告终,也就是说4.10的锐捷只是修改验证时间还不能成功使用VPN,至于问题出在哪里,现在不得而知了,有时间再来研究一下,或许比较老的版本没有问题,在这之前我不做修改直接使用VPN都是可以登录的,当然那个时候也用的锐捷也是比较老的版本。准备明天再用老一点的版本测试一下,太老的版本学校服务器端也不让用。
最后说明一点,如果学校会验证客户端的完整性的话,对锐捷做任何修改都会改变软件的MD5值,服务器端立马会发现你修改了软件,然后你就会悲剧,在我们学校就是写检讨+停网一周。。。
2010.08.22
我爱互联网
2,758 views
闲暇之余,看QQ群里很多好玩的动态表情,于是自己动手修改了一下,让这些表情也有点我们学校的风格。 我把修改方法分享给大家,希望以后在QQ群聊天表情里面能看见更多我们学校的个性表情。
先来给大家看下我们要实现的效果
原始图片:

修改后的效果图:

通过这个例子,你基本知道了GIF图片的修改和制作过程,再加上你的点子,好玩的动态图片就出来了。
首先我们需要安装Photoshop 这个软件,我只用过CS2和CS4,CS2完整版的话自带IR工具,可以直接分帧打开GIF格式的动画图片,如果是CS4的话,需要先安装QuickTime7.1及以上的版本,这个小插件在华军可以直接搜索到。这里以CS4为例。
首先选择文件---导入----视频帧到图层。

这个时候选择你要打开的GIF图片,是的,直接选择是无法选择的,因为这个时候不会选择GIF后缀名的文件,没关系,我们把目录选择在需要修改的图片目录下,然后手动输入图片名称+后缀名。比如我这里输入的就是原始文件.gif

打开的时候按照下图界面选择,GIF就成功的分帧导入了。

现在就开始修改图片了,在PS右边界面的图层栏里面选择图层一,回到编辑区,在左边的工具栏点击选择工具,拉去选区,选择图片上面的黑色部分,这个部分的作用是用来覆盖下面的原始文字的,当然你可以使用仿制图层工具来抹掉那些文字,但是我觉得这个方法比较麻烦。
选择好选区以后,按下快捷键ctrl+j复制选区,这个时候右边图层那里就会多出一个图层,就是你刚刚选区选择的那一部分被复制下来了。鼠标点击该图层后,在左边工具栏选择移动工具,移动该图层的位置,把他移动到下面,遮住原来的文字,用键盘上的上下左右键可以实现微调。

覆盖以后选择文字工具,在原文字区域拉取文字范围,输入你想输入的文字,输入完毕以后可以使用方向键调整位置。

调整好以后再文字图层上单击右键,选择栅格化文字,这个时候原本的文字图层变成了图片图层,不能再编辑了,然后再单击右键,选择向下合并。把文字图层和黑色遮盖图层合体。

合并后的文字图层再ctrl+j复制多个,到底是多少个这个要看图片需要了,反正多了可以删掉的,自己把握,这个后面有用的。

然后再图层一上面放置一张刚才复制的文字图层,点击文字图层右键选择向下合并,这个时候原始文件的GIF文件的一帧就被完全修改完毕了。

然后关闭图层1前面的眼睛,整个图层栏里面只打开两个眼睛,即图层可见,比如这里是图层2和文字图层。然后单击文字图层右键,选择向下合并。

按照上面的方法,将你需要修改的图层和文字图层合并,达到修改文字效果。比如这个图骗的1到8帧的文字都是一样的,我就可以用上面的方法一直合并到图层8,那剩下的图层呢?继续拉去黑色覆盖选择,输入文字,合并文字图层,移动和合适位置覆盖,方法和前面的一样的。
在所有图片修改完毕以后,点击上面的窗口,选择动画选项,这个时候编辑区下面会出现动画栏。

在动画栏里丢掉所有的图片,只保留一个图片。右边图层栏里只打开一个图层可见,即只有一个图片前面有眼睛,按顺序来,第一张图片的时候把图层一的大眼睛打开。然后再动画栏里选择复制。


复制好以后,关闭图层1的大眼睛,打开图层2的大眼睛,使图层2可见,然后再点击动画栏里的复制。


就这样设置好所有图片帧以后,可以点击动画栏里的播放键预览一下,也可以点击时间修改每帧的间隔时间,按自己的需要来。
下面就是保存图片了,GIF不能直接保存,要选择存储为WEB和设备所用格式。

预设里选择GIF,大致如图:

保存完毕后,用图片浏览器查看你保存的图片,是不是按照你修改的方式显示的。
这个帖子重点是讲方法,知道方法后你可以制作更有趣的动态图片,目前QQ聊天中的大部分动态表情都可以用这个原理去制作或者修改。
方法可能讲的有些不够清楚,大家将就看一下哈。
2010.08.20
我爱互联网
2,948 views
今天偶然发现这样一个问题,VPS上的phpmyadmin管理页面有些诡异,使用http://www.bujinshuo.com/phpmyadmin访问的时候,用户无法登陆,会直接跳转到我的博客首页,而且也显示不正常,如图:

phpmyadmin
但是使用域名http://www.bujinshuo.com/phpmyadmin/ 访问就完全正常,页面也显示正常,这个让我有些不明白。

phpmyadmin1
后来上网一查才知道是因为nginx目录没有自动添加“/”造成的,网上查了一下方法,基本上都是说修改nginx.conf来完成自动添加“/”
http{
...
server_name_in_redirect off; //自动添加斜线”/”语句
...
}
这个方法我试了一下,好像并没有效果,不知道是不是版本的问题,等下次再来试一下了。