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
| 阅读:21644
Submitted by gouki on 2010, April 14, 11:20 AM
这是来自iOrange.cc的文章,主要就讲了两个可能会被常用的时间函数。内容如下:
按时间搜索数据在mysql里应该是用的比较频繁的了。
iOrange系统里的时间都是按:xxxx-xx-xx xx:xx:xx这种格式存放的,大多数时候这个都没问题,但是,当你想使用其他格式来显示数据时就悲剧了,例如你想显示成 10/04/01 21:20 这种就很悲剧-__-,所以强烈建议保存时间戳的时候尽量存储一个UNIX时间戳,这样以后就方便很多了^_^
回归正题,第一个时间函数是:UNIX_TIMESTAMP,这个函数可以将xxxx-xx-xx xx:xx:xx这种格式的时间转换成一个unix时间戳格式的数字。例如下面那条语句:
update bookposts set lastpost = UNIX_TIMESTAMP(createdate) 这样就能将createdate字段上的时间更新到lastpost上去了。
第二个函数则跟第一个刚好相反:FROM_UNIXTIME,这个函数可以将一个UNIX时间戳转换成xxxx-xx-xx xx:xx:xx这种格式。用法大致如下:
SELECT COUNT(*) AS `newmembers` FROM `cdb_members` WHERE FROM_UNIXTIME(regdate, ‘%Y-%m-%d’) = ‘2010-04-01′”
--EOF--
不过,个人认为还是采用:xxxx-xx-xx xx:xx:xx比较好,这是因为,时间戳和这种日期格式在数据库里存储所占的字节都是一样的,而日期格式却没有1970~2038年这个限制。在计算时间区间的时候,用Between和and时,对于日期格式会更加方便,而时间戳则需要多计算一次。
参考:
1.Mysql时间函数 http://neatstudio.com/show-443-1.shtml
2.用TIMESTAMP类型取代INT和DATETIME[转] http://neatstudio.com/show-150-1.shtml
3.精通MYSQL数据库——连载八 http://neatstudio.com/show-263-1.shtml
Tags: from_unixtime, unix_timestamp
DataBase | 评论:0
| 阅读:22753
Submitted by gouki on 2010, April 14, 10:44 AM
Netbeans是我最近常用的编辑器,开源免费跨平台是我选择它的主要原因之一,但是让我郁闷的是,他不能在编辑时按照文件自身的编码来打开,这让我很郁闷,相反editplus还能够自动识别ansi和utf8而根据相应的编码来打开呢。
当然一般情况下,这是很正常的,创建一个project的时候指定编码就足够了。可是大家都知道的dz嘛。为了让自己的程序适合所有的编码,就把文件全部用ansi来处理,然后语言包采用相应的编码,这样,创建一个新的版本就十分方便。只是这样的前提是,所有的代码中不能出现其他编码,只能用GBK,并且不能有UTF8的输出。
于是就有我现在的问题,一半项目是uTF8,一半是GBK,整合在了同一个project里了,打开的时候就经常看到乱码。而所谓的插件encoding support,其实早就集成在系统里了,因为以前的版本不能默认指定编码的。现在的是可以指定项目,但不能指定项目里单独的某个文件。
郁闷 ,不得已了,下载ZendStudio了,因为ZS打开项目中文件的时候,可以右键,选择按指定编码打开。这,让我很方便的在一个项目中处理多种不同编码的文件。
这能怪谁呢?唉。
Tags: netbeans, encoding
Software | 评论:0
| 阅读:18558
Submitted by gouki on 2010, April 14, 10:38 AM
CNBETA上的文章 ,http://www.cnbeta.com/articles/108569.htm
微软日前公布的一项调查结果显示,定期更换密码并不能将黑客拒之门外,反而是浪费时间和金钱。
当前,许多企业IT部门强制员工定期更改密码,以作 为安全策略之一。这不但让员工感到反感,更让网络管理员感到头痛。
但微软日前公布的一项调查结果显示,这样做根本起不到实际作用。微软指出,黑客获得用户登录密码后,会立刻发动攻击,而不会等上几周时间,让用 户更改后再发动攻击。这就好比,一个小偷捡到一把钥匙后,不去立刻开门,而是等着房主把锁头更换掉。
微软称,定期更换密码就是在浪费时间,也就是在浪费金钱。如果美国有2亿成年网民,薪水按最低工资的2倍计算,每天一分钟,一年的总产值相当于160亿美元。
--EOF--
真没想到,微软会做这样的调查,记得SERVER版会每隔120左右提示你更改密码。因为他可以为用户设一下密码有效周期,以强制管理员更改密码。殊不知这样一改,对于系统管理员来说,又是一件非常痛苦的事情。如果管理一台两台服务器,还能够被接受,如果管理几十台服务器,这样的日子真是没法过了。
光改改密码,就是一天时间被浪费了。而事实上被攻击时并不是因为密码的原因,往往都是系统漏洞,难道不是?
Tags: 密码
Misc | 评论:0
| 阅读:14539
Submitted by gouki on 2010, April 13, 10:57 PM
SEO和网站架构或许真的搭不上边,但是否真的如此呢?由此引发了我的一些猜测
很多网站目前都采用了类静态文件(rewrite),使得路径都很长,而且每一层都是由拼音或者相应的英文来组成。
对于PHP的CMS来说,dede CMS是目前这样应用最明显的,他在生成静态的时候,默认就是按分类名称自动创建英文目录的。而相应的,dedeCMS的收录也相对会较其他 CMS明显。(这里我们不谈内容,如果谈内容,早期的BBS程序在回复的时候,都主动加上标题RE:xxxx,如果回复100条,那就是10页每页的title都会显示10遍,这样的关键词堆积,怎么不让收录上升?)
其实,仔细看使用量最高的wordpress吧。看后台对于固定链接的设定,都是偏向于日期结构和archive等。这样也是有相当的结构设定。再加上wordpress的文章也支持自定义标题,所以,wordpress几乎都是以全静态的方式在出现。(这一段没写好,不知道如何表达它的结构。)
PHP的CMS如果只谈DEDE,那么对于其他的就不太公司平了,从最早的iwps到现在phpcms等,中间有集成版的php168,还有那夫妻店phome的ecms,当然也还得提一下被disucz收购的supesite。这些程序都是经历了多版,帝国是唯一纯自己写的代码,supesite在被收购后也变味了,Discuz的味道很浓,phpcms呢,大量核心代码都是仿照了discuz,由此可见DZ影响了多少人。在这里面帝国的目录结构最乱,但是生成静态后也还是比较好的。
为什么把中文分类生成拼音目录(rewrite也这样操作了)?其实有历史原因也有现在的发展趋势。最早的时候,很多人不知道如何根据中文分类名称来设定相应的英文分类,后面就改用拼音了。现在的趋势呢是因为搜索引擎已经能够自动把中文翻译成拼音进行搜索,也会根据相应的拼音进行模拟搜索,甚至把拼音模糊成中文进行搜索,由此可见,拼音型的目录结构相当于又给搜索引擎一次收录的机会。【这些都是我的猜测】
上面讲的都是从生成静态,或者rewrite的方面来谈的所谓系统架构,其实这样当然是不对的。SEO除了这些静态、伪静态的目录结构外,还有一些真正的所谓的系统架构,当然这要留到后面去讲,因为我还没有彻底想好。
Tags: seo, 架构
Misc | 评论:0
| 阅读:17545