浏览模式: 标准 | 列表Tag:netbeans
Submitted by gouki on 2010, June 3, 1:27 PM
SAE是Sina App Engine(新浪应用引擎)的缩写,SAE是一个分布式web应用开发运行的服务平台,其不仅仅包含创建、部署web应用的简单交互,更涉及一整套大规 模分布式服务的解决方案。用户通过SAE可以方便的创建web应用、定制web应用、开发web应用、部署web应用、切换线上版本、删除应用,大大节省 了开发者的开发成本和运维成本。
作为大规模的分布式服务,云服务是未来的趋势,我们立志于走在云计算领域的研究开发前列,为广大web开发者提供基于云计算的更方便、快捷、可靠、节省的 应用开发运行平台,同时SAE也着眼解决新浪公司内部的资源冗余问题,为公司内部大量的web应用提供可靠的运行平台。
上面这段内容来自于SAE官方网站。云服务云服务,当然是用云来服务。GAE其实也是一个类似的玩意,其实SAE是在GAE出来了几年后才发展起来的东西,相比于GAE来说,功能是要差了一点,不过他是目前为止支持PHP最好的云。要知道google的GAE只支持java和python,虽然通过各种各样的扩展可以使得他支持jRuby,jphp之类的,但毕竟不是原生支持,而SAE才是
开通后做了一个小东西。就是PING自己的博客,当发现取不到meta数据时,就发封邮件给我。因为监控宝是半小时,我在SAE上可以跑5分钟一次。呵呵(既能刷PV,又能监控,多好啊。)
代码很简单。
PHP代码
- $url = 'http://www.neatstudio.com';
- $tags = @get_meta_tags( $url );
- if(isSet( $tags['generator'] ) && trim($tags['generator']) == 'gouki,editplus'){
-
- }else{
- require_once( 'saemail.class.php' );
- $smail = new saemail();
- $title = sprintf("[%s]无法访问",date( 'Y-m-d H:i:s' ));
- $smail->quickSend( '13800138000@139.com' , $title , '无内容' , '******@sina.com' , '******' );
- }
然后修改config.yaml,増加cron(其实原来的config.yaml已经有cron了,只是注释掉了)
修改后,为了防止被WEB访问,再加一个
XML/HTML代码
- handle:
- - hostaccess: if(path ~ "/cron目录/") allow "10.0.0.0/8"
表明只允许内网访问,不允许WEB访问,现在直接访问的时候就是403了。HOHO
过了半小时,收到了一封MAIL(因为在测试的时候,我是成功就发)
一切就是这样简单
Tags: sae, php, cron
PHP | 评论:3
| 阅读:25539
Submitted by gouki on 2010, May 27, 12:13 PM
最近在做个小东西,想用PHP跑console,生成一个文件,然后由WEB去调用这个文件。可是却一直失败。
命令行下,用crontab跑,因为WEB是在Safemode下面,但我需要Exec,因此crontab调用php的时候,我就指定了phpini,类似/php -c phpinifilepath phpfilename,于是这样可以了。
但生成出来的文件被WEB调用后。一直显示是失败。郁闷了。。
纯记录,无意义
Tags: php, cli, web
PHP | 评论:3
| 阅读:21582
Submitted by gouki on 2010, May 26, 10:09 AM
在PHP中可以直接对字符串进行比较,比如
PHP代码
- $a = 'A';
- $b = 'B';
- var_dump( $a > $b);
当然,在JS中也可以
JavaScript代码
- var s = 'A';
- var t = 'B';
- alert( s < t);
为什么可以比大小呢?那是因为,他们是直接转成ascii值来进行比较的,PHP中是 ord($a) 转成了65,B就是66了,所以$a>$b是返回false
PHP有两个函数用来互换,一个是ord,一个是chr,那么js中怎么办呢?也有,一个是charCodeAt(),一个是fromCharCode();看例子吧。。。
PHP代码
- <?php
- $a = 'A';
- echo ord($a);
- echo chr( ord($a) );
JavaScript代码
- var s= 'A';
- alert( s.charCodeAt() );
-
- alert( String.fromCharCode( s.charCodeAt() ) );
js中对于fromCharCode和php不太一样了。
Tags: ord, chr, php
Javascript | 评论:0
| 阅读:36604
Submitted by gouki on 2010, April 14, 4:37 PM
看到网上有篇文章,说是$_SERVER变量中的HTTP_HOST与SERVER_NAME不一样,打开网址后HTTP_HOST是全域名,而SERVER_NAME会显示根域名。
但是我采用了phpinfo看了一下,HTTP_HOST和SERVER_NAME是相同值,而并非是所说的不一样。
代码如下:
上面这段简单的代码里会显示$_SERVER变量的内容,搜索一下,HTTP_HOST与SERVER_NAME是一样的,都是www.neatstudio.com,当然这时候,我的路径是http://www.neatstudio.com/info.php,于是我尝试用http://neatstudio.com/info.php访问时,这两个值还是一样,当然都变成了neatstudio.com。
于是我翻开了手册想看看是怎么回事,为什么会有人说不一样。
手册上这么说:
- '
SERVER_NAME
' -
The name of the server host under which the current script is executing. If the script is running on a virtual host, this will be the value defined for that virtual host.
- '
HTTP_HOST
' -
Contents of the Host: header from the current request, if there is one.
看了上面的解释也基本上可以断定它基本是一样的,除非同一台服务器只有一个网站,但SERVER_NAME却与HOST不一样,或许会出现不同值。如果是虚拟主机,默认会以虚拟主机的值为准。为了测试,我在本地做了一个测试。
在hosts文件里加了127.0.0.1 www.neatcn.com 127.0.0.1 neatcn.com对应两个域名【强制在本地指定,否则会到使用域名真实IP】
然后在virtual host里,更换不同的ServerName 为neatcn.com和www.neatcn.com,但结果,都是根据访问路径来的,不管使用何种域名,HTTP_HOST和SERVER_NAME都是一致的,与访问路径中的hostname一致。
再对应一下那篇文章 ,由此基本可以鉴定那是一个SEO的文章,因为他在同一篇文章里介绍了两个域名还都不一致。唉。。。SEO沦落到如此地步了,刚开始看到的时候,我本来以为很激动的,我想着以后取根域名就方便了。不需要象现在还要根据不同的域名根来取根域名。。。
Tags: http_host, server_name, seo
PHP | 评论:1
| 阅读:22050
Submitted by gouki on 2010, February 10, 11:44 AM
说实话,rel在我眼里除了link CSS的时候用过,其他时候我还真没用过。根本不知道REL是用来干嘛 的。看了这篇文章才知道原来Rel还可以这么用。
原文是张经纬写的,他这么写道:
Rel-License 是微格式的开发标准之一,简单的说就是通过给引用标签(通常是链接)加上REL属性,来标明所引用链接/数据与文章的关系。
Wordpress很早就引入了rel标准,在我们添加新链接的时候就可以看到“关系”属性。
早期某些社交类搜索引擎可根据这个标签来判断人与人之间的关系,但它对网页开发来说并无意义,值得庆幸的是随着浏览器的逐渐升级,我们可以利用 CSS属性选择器以及REL来做一些有意思的功能。
这是一段带有REL属性的HTML结构。
XML/HTML代码
- <ul>
- <li><a href="#" rel="civil">小李</a></li>
- <li><a href="#" rel="party">局长</a></li>
- </ul>
页面中他呈现这个样子

因为局长和小李是两个不同的阶级,所以我们应该有区分他们,我打算在小李和局长后面增加两张图片让他表现出这个样式。

过去,我们需要在两个链接标签上增加不同的class来实现这种样式,并且我们需要针对不同的样式书写不同的CSS
XML/HTML代码
- <style>
- .c,.b {background:url(01.png) right center no-repeat;}
- .b {background-image:url(02.png);}
- </style>
- <ul>
- <li><a href="#" rel="civil" class="c">小李</a></li>
- <li><a href="#" rel="party" class="b">局长</a></li>
- </ul>
现在,我们可以利用REL属性以及属性选择器来完成这个工作。
CSS代码
- a[rel~="civil"]{background:url(01.png) rightright center no-repeat;}
- a[rel~="party"]{background:url(02.png) rightright center no-repeat;}
同时,我们的HTML结构也可以剔除那些多余的样式了。
XML/HTML代码
- <ul>
- <li><a href="#" rel="civil">小李</a></li>
- <li><a href="#" rel="party">局长</a></li>
- </ul>
另外:ie6不支持属性选择器,但我们可以用JS来修复这个问题。
--EOF--
最后一句话实在让人寒心,不过总算也可以这样的做了,再过一两年,还有IE6的存在吗?IE6的时间够长了吧?好象从02年开始到现在,都经历了8年左右的时间了,居然还没有被消亡。习惯这东西真害人。。。。
原文地址为:rel与CSS的联合使用,不过其实我更喜欢第二幅图后面的小图标
Tags: 前端, css, rel
Misc | 评论:2
| 阅读:25296