Submitted by gouki on 2012, May 14, 9:10 AM
在微博的#SAE技术分享# 看到一些有意思的东西,比如这一篇的标题,嗯,确实是有一些奇怪的玩意。
比如,ubuntu下的apt-get moo,居然出来了这样的玩意,你能相信吗?》
XML/HTML代码
- root@webserver:/# apt-get moo
- (__)
- (oo)
- /------\/
- / | ||
- * /\---/\
- ~~ ~~
- ...."Have you mooed today?"...
好一只羊?还有一些其他的命令,比如yes,好象记得这个命令是专门用来处理自动化安装的吧?即自动输入y,N个,直到安装完成,如果没有安装,就在屏幕上拼命的输出。。。
还有一些其他的。。比如banner,会将你输入的字符用##打印出来,比如我这个:
XML/HTML代码
- root@webserver:/# banner bannertest
-
- ##### ## # # # # ###### #####
- # # # # ## # ## # # # #
- ##### # # # # # # # # ##### # #
- # # ###### # # # # # # # #####
- # # # # # ## # ## # # #
- ##### # # # # # # ###### # #
,再比如fortune,这个函数很有意思,既能学英文又可以很好玩,该网页上这么显示了:
XML/HTML代码
- orange@orange-desktop:~$ fortune
- Q:How many IBM types does it take to change a light bulb?
- A:Fifteen. One to do it, and fourteen to write document number
- GC7500439-0001, Multitasking Incandescent Source System Facility,
- of which 10% of the pages state only "This page intentionally
- left blank", and 20% of the definitions are of the form "A:.....
- consists of sequences of non-blank characters separated by blanks".
想看更多?到这里看一下吧:http://www.linuxidc.com/Linux/2007-05/3784.htm,不是每个linuxer都是闷瓜。
Tags: sae, ubuntu, linux
苹果相关 | 评论:0
| 阅读:18645
Submitted by gouki on 2012, May 13, 10:13 PM
命令行和WEB运行程序中遇到的问题就是,这两个方式生成的图片目录权限不一样,目录命令行,如果以xxx用户登录,生成的目录组就是xxx,而WEB因为指定了apache或者nginx的用户组(如:www-data),生成出来的权限就是以www-data为主,如果需要读取和处理Xxx目录下的图片等,很可能会遇到不能读取或者没有权限的问题
因此,一个办法是:su www -c 'xxxx'这种指定权限的方式来处理
还有一个办法:
suPHP is a tool for executing PHP scripts with the permissions of their owners. It consists of an Apache module (mod_suphp) and a setuid root binary (suphp)
嗯看一下:suPHP
现在就可以了?但总是不爽。没有什么更好的办法 .。。
PHP | 评论:0
| 阅读:13454
Submitted by gouki on 2012, May 11, 9:12 PM
最近在与IOS交互的时候,是由weiview里改变location.href来使得页面的URL产生变化,然后由IOS来截取这些URL信息以达到截获消息的机制。
有人推荐了:https://github.com/marcuswestin/WebViewJavascriptBridge
看了一下,其实也都差不多一样,不过看到FlipBoard的代码中,也还是用location来改变的,但是它也有一个机制,当你用网页打开时,并不会触发Location的变更,所以我在想是否有一种相对比较好的机制,能够使得数据的交互更方便。
抛开上面的例子以及flipboard,这两种其实最终都是用addEventListener来监听和传递,但毕竟要和客户端交互,除了URL其他用什么呢?
我随便想了想,不知道是否正确:
1、localStorage,客户端定时检查localStoage的信息
2、cookie,改变cookie值以获取改变后的值
3、利用Safari的特性,捕获console.log的数据
cookie应该是肯定可以,但是太慢了吧?第三个,有可能,但没有测试过
Tags: ios
Flutter | 评论:0
| 阅读:14762
Submitted by gouki on 2012, May 10, 9:26 AM
看这个标题,或许很多人会嘲笑我,刷新,谁不会呀。F5一按就完事了呗。
大家都知道刷新分:普通刷新和强制刷新,普通刷新的话,如果图片做了缓存(304)那么几乎是永远都看不到新图了。做开发的,当然希望是每次都强制刷新,可以看到真实的效果,不过。。。。万一用户没强刷怎么办。
看了一下taobao QA的文章才了解,刷新的种类居然有这么多:
http://qa.taobao.com/?p=15297
- 浏览器的刷新有2类
- 第1类:普通刷新。会首先从缓存中加载内容,缓存中已过期部分内容会从服务器重新请求。
- 第2类:强制刷新(刷新缓存和页面)。会从服务器重新请求所需要加载的内容
-
- 第2类刷新的情况:
- 1) 快捷键CTRL + F5
- 2) 按键CTRL + 点击工具栏刷新按钮
- 3) 按键CTRL + 点击地址栏右侧刷新按钮
-
- 第1类刷新的情况:
- 1) 点击工具栏刷新按钮
- 2) 点击地址栏右侧刷新按钮
- 3) 网页中右键菜单,点击刷新按钮
- 4) 菜单:查看->重新载入
- 5) 快捷键F5
- 6) 快捷键SHIFT + F5
- 7) 通过鼠标手势刷新
- 8) 按键CTRL + 网页中右键菜单,点击刷新按钮
- 9) 按键CTRL + 菜单:查看->重新载入
- 10) Webkit核下,快捷键CTRL + R
mac下面,几乎就是接ctrl换成command。
Firefox,如果安装了firebug,打开firebug,在net标签中可以选择:强制刷新,这样每次请求都不会从缓存中走了。
PHP | 评论:0
| 阅读:16520
Submitted by gouki on 2012, May 8, 10:17 PM
开发中又遇到一些事情,于是记录一下
1、CURL的问题
curl在安全模式下或者设定了open_basedir的情况下,如果使用了OPT_FOLLOWLOCATION,会导致无返回值。这个理由很多,但FOLLOWLOCATION这个参数是用于目标网址会多次跳转而使用,还可以设置最大跳转次数,因此,如果你要抓取的对象有多次跳转,这个参数就非设不可(真纠结,实在不行就file_get_contents了,它自动支持多次跳转,但不如curl更可控一些)
具体关于CURL的一些常用参数,可以看这里:
http://opensuse.iteye.com/blog/349829
- curl_setopt($ch, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1);
-
- curl_setopt($ch, CURLOPT_NOPROGRESS, 1);
-
- curl_setopt($ch, CURLOPT_NOBODY, 0);
-
- curl_setopt($ch, CURLOPT_HTTPGET, 1);
-
- curl_setopt($ch, CURLOPT_ENCODING, ”);
-
- curl_setopt($ch, CURLOPT_COOKIEFILE, 1);
-
- curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
-
- curl_setopt($ch, CURLOPT_MAXREDIRS, 3);
-
- curl_setopt($ch, CURLOPT_USERAGENT, ‘Mozilla/4.0 (compatible; MSIE 5.00; Windows 98)’);
-
- $http_header = array();
- $http_header[] = ‘Connection: Keep-Alive’;
- $http_header[] = ‘Pragma: no-cache’;
- $http_header[] = ‘Cache-Control: no-cache’;
- $http_header[] = ‘Accept: */*’;
- $http_header[] = ‘Host: ‘.$url_ary['host'];
- curl_setopt($ch, CURLOPT_HTTPHEADER, $http_header);
-
- curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
-
- curl_setopt($ch, CURLOPT_TIMEOUT, $timeout);
-
- curl_setopt($ch, CURLOPT_REFERER, $url);
-
- curl_setopt($ch, CURLOPT_URL, $url);
-
2、命令下行指定用户组来执行命令
最偷懒的方法就是:su www -c 'php xxx.php'
3、hightman遇到的Javascript函数parseInt(''),返回NaN,这个让我想起有个人做了一个PPT,来说明JS中的一些特殊问题,它的地址是:http://neatstudio.com/show-1987-1.shtml
4、PHP的header跳转
大家都知道header("Location:http://xxx.xxx.com");在这个之后如果你file_put_contents内容去一个文件,还是会被执行的,于是我们习惯性的在header跳转后继续处理一些内容,即不影响跳转,也可以完成一些内容性的处理。
但尝试了一下,如果是header()下面跟上sleep(10);你会发现header不会即刻跳转了,会等10秒后再跳转。
因此,现在了解header跳转还是会受原有代码的影响的。
5、HTML5的a标签属性ping
ping的属性说的很好,当a有href属性时,如果有ping属性,会在跳转链接时候,自动ping网站(ping标签中的对应网站),但测试了一下之后发现。居然没用。查看了一下资料,我操:
6.6 Changes from 4 March 2010 to 24 June 2010
- The
ping
attribute has been removed from the W3C version of HTML5.
我郁闷啊。。。
-------EOF------
Tags: curl
PHP | 评论:0
| 阅读:15644