日志文章列表

2006年01月03日 15:57:51

php.ini 配置详细选项```

php.ini 或 php3.ini 是 PHP 在启动时会读取的配置文件。该文件的存放路径为 /usr/local/lib/。在 PHP 3.x 版的配置文件为 php3.ini;而在 PHP 4.x 版改为 php.ini。若 PHP 安装成服务器的模块,则在 Web 服务器启动执行时会读取,之后就不再读取,因此改动配置的话要重新启动 Web 服务器。若使用独立 PHP CGI 方式,则每次都读一次。
要看目前的系统配置,可以用phpinfo()看到。以下为选项配置


php_value name value
配置变量名称和值。本选项需 PHP 4.x 版之后才能使用。

php_flag name on|off
配置标志布尔变量选项。本选项需 PHP 4.x 版之后才能使用。

php_admin_value name value
配置 Apache 的配置文件变量。原来在 .htaccess 的配置改到这个选项配置。本选项需 PHP 4.x 版之后才能使用。

php_admin_flag name on|off
配置布尔变量当标志。本选项需 PHP 4.x 版之后才能使用。

asp_tags boolean
配置 PHP 程序是否解析以 ASP Script 语法 <% %> 的标记 (tag)。本选项在 PHP 3.0.4 之后才可使用。更多的细节可以参考>嵌入方法的部份。

auto_append_file string
配置本选项可以让指定的文件附加在原 PHP 程序后面自动执行。若 PHP 程序中有用到 exit() 函数,则指定的文件不会执行。参数 string 即为指定自动执行的文件。

auto_prepend_file string
配置本选项可以让指定的文件在原 PHP 程序之前自动执行。参数 string 即为指定自动执行的文件。

cgi_ext string
本选项配置 CGI 程序的扩展名。

display_errors boolean
本选项配置是否要将执行的错误信息显示在用户的浏览器上。

doc_root string
配置服务器的文件及 PHP 文件放置的根目录。

engine boolean
本选项需要使用apache的模块方式使用 PHP。可配置是否要使用 PHP 引擎。在 httpd.conf 中加入 php3_engine on/off 亦可配置某目录或某虚拟网站是否要用 PHP 解析器。

error_log string
本选项用来配置错误记录文件。在 UNIX 系统上参数 string 即为文件名。Windows NT 会将记录记在事件检视器的日志之中。Windows 95/98 则不支持系统记录。

error_reporting integer
本选项用来配置系统记录的等级。参数 integer 即为等级的级数标志,可以加在一起,默认值为 7,见下表
级数 说明
1 一般的错误
2 一般的警告
4 解析错误
8 非关键的警告


open_basedir string
本选项用来配置提供 PHP 存取的最底层目录。从该指定目录之下的文件或目录,PHP 程序才能存取。使用本选项主要是为了系统安全性的考虑。参数 string 即为要限制的最底层目录节点。值得注意的是在 UNIX 系统中,若该节点之下的文件或目录有符号链结 (symbolic link),则可能会让使用本选项的目的打折,因此在目录的设计上考虑,也是 Webmaster 的重要任务。默认值是所有文件均可存取。在 PHP 3.0.7 版之后,可以配置多个底层目录。

gpc_order string
配置 GET/POST/COOKIE 三种模块的顺序及规则。参数 string 即为要配置的规则,例如:配置成 "GP" 表示忽视 cookie,并在存取方法 (method) 相同时,以 POST 取代 GET。

ignore_user_abort string
默认值为 Off。用来配置当传输未完成时,用户端断线是要继续处理。

include_path string
为 PHP 程序中 require、include 及 fopen_with_path 等函数的文件搜寻路径。在 UNIX 或 Windows 中的斜线方向不同。

log_errors boolean
指定程序错误时是否要记录在 log 文件中。

magic_quotes_gpc boolean
配置 GET/POST/COOKIE 三种模块的特殊字符,包含单引号、双引号、反斜线、及空字符 (NUL) 是否要自动加入反斜线当溢出字符。

magic_quotes_runtime boolean
配置返回资料是否自动加入反斜线当溢出字符。

magic_quotes_sybase boolean
配置 sybase 资料中单引号要自动加上反斜线当溢出字符。

max_execution_time integer
配置程序最久执行时间。单位是秒。

memory_limit integer
配置程序最多使用多少内存。

short_open_tag boolean
配置是否使用短的 PHP 标记 (<? ?>)。若不使用,则必须要用 <?php 作为程序的开头,若要使程序合乎 XML 的标准则要关闭本功能。

track_errors boolean
打开本选项可使最后的错误信息跟着全局变量 $php_errormsg。

track_vars boolean
打开本选项可让用户输入的字符串自动解析到变量之中,而不用自己处理。

upload_tmp_dir string
指定上传文件临时路径。

user_dir string
指定用户根目录的路径。

warn_plus_overloading boolean
若打开本选项,字符串间就只能用英文的句号 (.) 链接,而不能用加号 (+) 链接字符串。

SMTP string
在 Windows 系列操作系统中,用来指定 SMTP 服务器,供 mail 函数使用。参数 string 为 SMTP 服务器名字。

sendmail_from string
配置 "From: " 字符串供 Windows 系列操作系统使用 mail 函数。

sendmail_path string
配置 sendmail 程序的放置路径。例如 /usr/sbin/sendmail。

safe_mode boolean
配置 PHP 在安全模式下执行。

safe_mode_exec_dir string
配置安全模式程序执行的路径。

debugger.host string
指定远端调试的服务器名称,可以是 IP 或 Domain Name。

debugger.port string
配置远端调试服务器的端口 (port)。

debugger.enabled boolean
配置是否可以为调试模式。

enable_dl boolean
本选项要使用apache模块 (Apache module) 的方式才有效。用来配置 PHP 的函数可否作用。当系统处于安全模式 (safe-mode) 时,本选项 enable 也无法使用 dl() 函数。

extension_dir string
配置动态函数的路径。

extension string
PHP 启动时所要载入的动态扩充功能。

mysql.allow_persistent boolean
配置是否允许 MySQL 数据库持续连接 (persistent connections),会影响函数。

mysql.max_persistent integer
配置每个处理程序最多保持几个 MySQL 持续连接。

mysql.max_links integer
配置每个处理程序最多开几个 MySQL 连接,包括持续连接。

msql.allow_persistent boolean
配置是否允许 mSQL 数据库持续连接 (persistent connections),会影响函数。

msql.max_persistent integer
配置每个处理程序最多保持几个 mSQL 持续连接。

msql.max_links integer
配置每个处理程序最多开几个 mSQL 连接,包括持续连接。

pgsql.allow_persistent boolean
配置是否允许 Postgres 数据库持续连接 (persistent connections),会影响函数。

pgsql.max_persistent integer
配置每个处理程序最多保持几个 Postgres 持续连接。

pgsql.max_links integer
配置每个处理程序最多开几个 Postgres 连接,包括持续连接。

sybase.allow_persistent boolean
配置是否允许 Sybase 数据库持续连接 (persistent connections),会影响函数。

sybase.max_persistent integer
配置每个处理程序最多保持几个 Sybase 持续连接。

sybase.max_links integer
配置每个处理程序最多开几个 Sybase 连接,包括持续连接。

sybct.allow_persistent boolean
配置是否允许 Sybase-CT 数据库持续连接 (persistent connections),默认值是打开的。

sybct.max_persistent integer
配置每个处理程序最多保持几个 Sybase-CT 持续连接。默认值为 -1 表示无限制。

sybct.max_links integer
配置每个处理程序最多开几个 Sybase-CT 连接,包括持续连接。默认值为 -1,表示没有限制。

sybct.min_server_severity integer
配置 Sybase-CT 服务器错误报告的最少笔数。默认值为 10。

sybct.min_client_severity integer
配置 Sybase-CT 客户端错误报告的最少笔数。默认值为 10。

sybct.login_timeout integer
配置 Sybase-CT 最久可以使用的登入时间。默认值为 1 分钟。

sybct.timeout integer
配置 Sybase-CT 的 query 操作时间限制。默认值为无限制。

sybct.hostname string
配置 Sybase-CT 可连接机器名称。默认值不设限

ifx.allow_persistent boolean
配置是否允许 Informix 数据库持续连接 (persistent connections),会影响函数。

ifx.max_persistent integer
配置每个处理程序最多保持几个 Informix 持续连接。

ifx.max_links integer
配置每个处理程序最多开几个 Informix 连接,包括持续连接。

ifx.default_host string
配置 Informix 默认连接的服务器名称,供ifx_connect()或ifx_pconnect()函数使用。

ifx.default_user string
配置 Informix 默认连接的用户帐号,供ifx_connect()或ifx_pconnect( 函数使用。

ifx.default_password string
配置 Informix 默认连接的用户密码,供ifx_connect()或ifx_pconnect() 函数使用。

ifx.blobinfile boolean
配置 Informix 长位类模式,0 表在内存;1 表在文件中。亦可以在 PHP 程序中使用ifx_blobinfile_mode()函数来修改。

ifx.textasvarchar boolean
配置 Informix 文字模式默认值,0 表返回 blob 的代码;1 表返回 varchar 字符串。亦可在 PHP 程序中使用ifx_textasvarchar() 函数来修改配置。

ifx.byteasvarchar boolean
配置 Informix 位组模式默认值,0 表返回 blob 的代码;1 表返回 varchar 字符串。亦可在 PHP 程序中使用ifx_byteasvarchar() 来修改配置。

ifx.charasvarchar boolean
配置 Informix 返回字符串的字尾空格是否要自动去除。

ifx.nullformat boolean
配置 NULL 字段的返回方式,true 表示返回字符串 NULL,false 表格返回字符串 ""。亦可在 PHP 程序中以ifx_nullformat() 修改。

bcmath.scale integer
配置 BC 高精确度函数库的小数点位数。

browscap string
配置浏览器的开文件能力名。

uodbc.default_db string
配置 ODBC 默认连接的数据库名称,供odbc_connect()或odbc_pconnect()函数使用。

uodbc.default_user string
配置 ODBC 默认连接的用户帐号,供odbc_connect()或odbc_pconnect()函数使用。

uodbc.default_pw string
配置 ODBC 默认连接的用户密码,供odbc_connect()或函数使用。

uodbc.allow_persistent boolean
配置是否允许 ODBC 数据库持续连接 (persistent connections),会影响odbc_pconnect()函数。

uodbc.max_persistent integer
配置每个处理程序最多保持几个 ODBC 持续连接。

uodbc.max_links integer
配置每个处理程序最多开几个 ODBC 连接,包括持续连接。
以下和 session 有关的配置值,都在 PHP 4.x 以上的版本方支持。在 php.ini 的配置文件中。


session.save_handler
定义 session 储存资料的文件名称。默认值为 files。

session.save_path
定义 session 储存资料的文件路径。默认值为 /tmp。

session.name
配置 session 所使用的 cookie 名称。默认值为 PHPSESSID。

session.auto_start
配置 session 是否自动打开。默认值为 0 (否)。

session.lifetime
配置 cookie 送到浏览器后的保存时间,单位为秒。默认值为 0,表示直到浏览器关闭。

session.serialize_handler
定义连续/解连续资料的标头,本功能只有 WDDX 模块或 PHP 内部使用。默认值为 php。

session.gc_probability
配置每笔要求回应时的废物蒐集 (gc, garbage collection) 处理机率。默认值为 1。

session.gc_maxlifetime
配置废物被清除前的存活秒数。

session.extern_referer_check
决定参照到客户端的 Session 代码是否要删除。有时在安全或其它考虑时,会配置不删除。默认值为 0。

session.entropy_file
配置 session 代码建立时,使用外部高熵值资源或文件来建立,例如 UNIX 系统上的 /dev/random 或 /dev/urandom。

session.entropy_length
配置 session 从高熵值资源读取的位组数。默认值为 0。

session.use_cookies
配置是否要将 session 变成 cookie 存在用户端。默认值为 1,表是打开本功能。

类别: 无分类 |  评论(0) |  浏览(8748) |  收藏
2006年01月03日 15:57:17

ALEXA全攻略```

ALEXA全攻略(上)```



写此文之前本拟在“ALEXA”前加一个“网站流量世界排名”,可转而一想ALEXA主营业务及目前的功能也不一个专做网站流量排名的网站,更确切的说它是一个提供搜索的网站,提供分类导航的网站。不过在中国,大多数人与我的第一反应就是它是一个做网站流量排名的网站,是一个“排名网站”。就是《福布斯》是靠给富人排名而使自己出名,ALEXA是给网站排名而出名。
初识ALEXA是2003年初,不过因其全英文而使我对其只知皮毛,随着国内媒体一次次地提起它,也就开始有意识地去了解字。特别是最近“一搜”(www.yisou.com)刚推出几个月就排名ALEXA全球排名30位左右而被媒体大量报导;而百度收购网址之家HAO123(www.hao123.com),在里面提到的“Hao123.com的流量在alexa.com的排名中居全球25名左右。”更使人们对ALEXA频频接触。ALEXA成为大家公认的权威网站排名网站。
为使一些跟一年前的我一样初识ALEXA的人更了解它,在此将ALEXA作一个汇编,推出ALEXA全攻略。整个ALEXA全攻略分为上下两部份:ALEXA全攻略(上)、ALEXA全攻略(下)(在本文引用了很多人的文章,对他们表示感谢,本文并非完全原创,而是作一个汇总)
ALEXA全攻略(上):了解
全攻略一:认识ALEXA
全攻略二:ALEXA的排名机制
  全攻略三:ALEXA排名的计算公式
全攻略四:ALEXA排名变化榜

ALEXA全攻略(下):应用
全攻略五:ALEXA排名有什么用
全攻略六:如何加入ALEXA的五星行列
全攻略七:如何在自己网站上显示ALEXA排名
全攻略八:如何正确看待ALEXA
ALEXA全攻略(上):了解


Alexa网站创建于1996年4月,1999年成为亚马逊网站的全资子公司。Alexa网站最初是一个分类导航网站,也提供关于网络的动态相关数据和服务,包括流量信息、分析等。2002年春天,Alexa网站与Google网站合作,开始提供搜索服务。至今经过近8年的积累,Alexa网站已经形成了相当庞大的网上档案,储存了35亿个网页的URL(统一资源定位符)连接,居世界四大名搜索引擎第一位,已经超过了Goolge、Fast和Alta Vista,数据总量有50万G,每月平均增长量在3万G,全部内容60天更新一遍。
 当然让Alexa网站成名的还是它提供的全球网站排名。这个排名是通过监测安装在上千万Alexa工具条(Alexa toolbar)用户的每天点击量统计出来的。第一个Alexa工具条于1997年发布,它是一个IE浏览器插件,用户现在已超过1000万。只有用户下载了Alexa工具条,该用户访问某个网站的记录才能算作访问量。Alexa工具条是免费的搜索和导航工具,不仅整合了Google网站的搜索功能,还能提供网站的相关信息,如网站流量排名和联络方式等。通过提供的相关链接可以更方便地浏览相关网页。此外还提供历史网页(wayback)服务,有些像网页快照的功能,主要是提供过去某一天的全部网站快照,一般来说一个月选择一天。这样可以让网民对一个网站的发展过程有个大体了解。
登录Alexa网站也可以看到同样的更加详细的网站排名信息。Alexa网站的另一大特色是网络流量排名趋势图,有3个月、6个月、一年和两年4个时间范围,是由3天网站流量平均排名相连接组成的一种坐标曲线图,看起来有些像是股票的K线图,它的升升降降同样也牵动着众多网站关注的目光。  
Alexa网站的排名是通过对Alexa工具条用户采样得到的。通过装在全球超过1000万台电脑上的Alexa工具条,Alexa提供流量排名的取样来源是基于全球最大的互联网用户样本群。因为Alexa的工具条上具有Google的搜索功能,而且提供中文的网站排名,所以中国国内用户也比较多,提供的排名样本相对比较准确。目前Google的中文用户越来越多,同样地使用Alexa的中文用户也逐渐增多,使Alexa网站排名更加准确。分析这些用户的阅读习惯,对于了解新闻网站的受欢迎程度是非常有帮助的。而且因为具有可比性,可以比较同类网站在网民中受欢迎的程度。
当然,与全世界近6亿互联网用户和我国8700万互联网用户相比,Alexa提供的用户样本可能不是最具有代表性的采样,这个排名大致反映了Alexa工具条用户的喜好。一般来说,访问量越大,排名越靠前,这个数据就越准确。在更优秀的排名出现之前,这个排名具有很重要的参考价值。
由于Alexa网站的数据分析是英文版本的,所以有必要了解其中关键词的含义:
网站流量排名(Traffic rank),通过网站访问人次和网页访问量的几何平均值计出来的全球网站排名。
  每百万用户访问网站人次(Reach per million users):每百万Alexa工具条用户中访问该网站的人次。
网站访问人次排名 (Reach rank):按照访问人次进行的排名。
  网页平均访问量(Page Views per user):每个访问者平均浏览该网站的网页数目。一名用户一天内多次浏览同一个网页只算一次。
  网页访问量排名(Page Views rank):网页平均访问量的排名。
  为保证数据的稳定性和准确性,Alexa网站还提供1周(1 week average)和3个月(3 month average)的平均数据以及3个月变动比率(3 months Changes)数据。
由于广告宣传、语言和地理、文化因素,Alexa工具条在各国的普及率不同。全球Alexa排名500名的网站主要有美国网站、韩国网站和中国网站。韩国网站在Alexa排名居前反映了韩国互联网的普及率,也反映了韩国用户中安装Alexa工具条的比例非常高。
Alexa网站还有一个很有用处的功能,就是提供浏览者浏览的类似网站的信息,这对于分析浏览者的浏览习惯和喜好是有帮助的。Alexa网站还能提供网站的速度水平、连接到这个网站上的其他网站的数目、网站发布时间等数据。
全攻略二:ALEXA的排名机制
如此大量的网站地址,如此详尽的数据和统计,确立了Alexa的网站世界排名的权威。Alexa给出的排名无疑吊起众多与网站密切相关者的胃口。人们难免会思考:为什么我们的网站排在他们的之后?怎样才能排得靠前一些?怎样才能提升网站的浏览率?也有人会问:这个排名科学吗?公正吗?为此,我们有必要了解一下Alexa的浏览率统计和排名机制。
一、Alexa浏览率统计和排名的先决条件
1、Alexa的网站排名是按照每个特定网站的被浏览率进行排名的。浏览率越大,排名越靠前。
2、浏览率是针对定义在域上的网站进行统计的。如:www.sina.com.cn、news.sina.com.cn 和tech.sina.com.cn将被视作同一网站进行计数,因为它们同属于sina.com.cn这个域。但是也有例外,如个人主页,如果系统能够自动从URL地址分辨的话,将被视为彼此独立的网站。
3、提供同样内容的网站将被视为同一网站计算。比如,大中华印艺网使用www.cgan.comwww.cgan.org两个域名发布同样的内容,那么将被作为同一个网站来计算。
4、 纳入统计的访问量仅来自使用Alexa工具栏(Alexa Toolbar)的用户。也就是说,只有用户下载了Alexa工具栏,并将其嵌入自己的浏览器。这样,该用户访问某个网站的话,访问的记录才能算作被访问网站的访问量。据Alexa统计,现在使用该工具栏的用户达数百万。
5、 Alexa工具栏仅在windows操作系统下,Internet Explorer浏览器中使用有效,使用其它操作系统或者浏览器的访问将不能被计数。
6、 遇到有安全保护或加密的站点,Alexa工具栏将自动关闭,因此那些安全系数高的网站,Alexa将不能对其进行搜索和统计排名。
二、Alexa浏览率算法
1、 某个特定网站被排名时,依据的浏览率数据是基于该网站3个月访问量记录的累积。也就是说Alexa每三个月发布一次排名结果,即通常说的名次。它的计算主要取决于访问用户数(Users Reach)和页面浏览数(Page Views)。Alexa系统每天对每个网站的访问用户数和页面浏览数进行统计,通过这两个量的三个月累积值的几何平均得出当前名次。
2、访问用户数(Users Reach)指通过Internet访问某个特定网站的人数。用访问某个特定网站的人数占所有Internet用户数的比例来表示。即:访问用户数 = (访问人数/全部Alexa用户数)* 100%,Alexa以每百万人作为计数单位。以世界网络(linkwan.com)为例,如果它的访问用户数为2%的话,就是说,随意抽取一百万的Internet用户,其中有20,000人访问世界网络。
3、 页面浏览数(Page Views) 是指用户访问了某个特定网站的多少个页面。是所有访问该网站的用户浏览的页面数之和。每个用户浏览的页面数取平均值,是所有访问该网站的用户每天每人浏览的独立页面数的平均。同一人、同一天、对同一页面的多次浏览只记一次。
三、影响Alexa排名的其他因素
1、Alexa Toolbar的采用率在全球各地有所差异,受用户的语言、地域、文化等各方面的影响。因此英文网站相对于其它语言的网站,访问量数据更容易被充分地统计。
2、 容易受网站对自己宣传的程度、做广告的多少、别的网站为其建立链接的多少的影响。
3、 不同类别的网站有时没有可比性,所以不能一味地比较综合排名。如专业性的网站在同类别网站中排名非常靠前,但和门户类网站相比,浏览率可能差别很大。
4、 排名的网站最好主动将自己的URL地址添加到Alexa 中,否则访问量的统计会受到影响,而且Alexa不提供这些网站访问量的详细统计。
5、 浏览率太小的网站统计数字可能不准确,总体上排名越靠前(浏览率越大)的网站统计数字就越可靠。一般来说,月访问量1000以下或排名100,000以后的网站统计数字是不准确的。
可以肯定,任何的计算方法都不完美,所以我们也无法评述Alexa排名的公正性和科学性。但既然Alexa将相关统计信息通过Internet全球公开发布,大家又都用Alexa的统计作为标杆,从中国到世界各国权威的新闻媒体在讨论一个著名网站的规模时,莫不以alexa为标准。世界上也没有第二个象alexa那样的网站不需要你在网页中插入他的代码等等来计算排名,他对全世界所有网站一视同仁,我们就姑且相信其专业性和权威性...


ALEXA全攻略(下)```

全攻略四:ALEXA排名有什么用
如今,我们看一下网站如何,都会习惯性的看一下它在ALEXA上的排名,如果HAO123不是稳定排名在世界25位左右,我想百度也不会收购它。ALEXA有什么用呢?
对于非商业的网站来说,排名的作用为:
1、满足虚容心
2、如有人要在你的网站投放广告,alexa排名是收费的重要依据。(通常排名比较高,才会有人找你投入小量广告,就当挣些小钱吧。)

对于商业网站而言,排名比较重要:
1、是广告收费的依据之一。
2、评估网站价值的依据之一(如果以后要转卖域名或网站)
3、炒作新闻的一个报道点。
4、严密监测竞争对手的重要方法。(对于自己的竞争对手网站,你是否每天去看他的流量和排名变化。除alexa之外别无他法,换言之:只有alexa才能告诉你答案。当某竞争对手的流量出现突变时,必是其投入了广告或在某处加了搜索,自己留心去找,肯定能找到。)
所以我看重alexa!我每天必用alexa!我感谢alexa!
全攻略五:如何加入ALEXA的五星行列
常常在某些网站上会看到这样的说明:“国际消息:据亚马逊网站www.amazon.com)麾下的Alexa.com的最新资料显示,XX网站在Alexa全球用户中的被评为☆☆☆☆☆级。”
难道这真是Alexa认证的五星级?下面我们也来创造一个所谓Alexa的五星级认证,让你的网站也挂上漂亮的红色五星。
首先登录Alexa.com网站(http://www.alexa.com),在搜索栏中键入自己的网站地址,然后点击按钮“GO”。如果您的网站已经被Alexa.com网站收录并统计,就会转到http://www.alexa.com/data/details?url=您的网站URL页面。统计数据主要有两个:一个是真正权威的排名统计(Traffic Rank for 网站的URL:网站排名);另一个Avg. Review:N星,是一些网站所谓的“权威认证”。
点击此页面下的“Write a review...”链接就会进入网友评论页面,下面就是我们要做的事情了,填写上你的名字、评论标题和评论的内容。这些都不是最重要的,看到一个下拉菜单没有?这里就是关键所在,选择“5 stars”吧,你的网站很快就会成为五星级网站!还有一个重要的地方是,你的邮件地址一定要填写正确,这是你网站成为Alexa五星认证网站的重要保障。
全部填写完毕提交后,系统会给你一个提示“Thank You! Your review is being processed.A confirmation e-mail will arrive in your e-mail box in a few moments. You must reply to the confirmation e-mail to complete the submission process.”意思是说你必须回复系统给你的这个邮件。
过一段时间你的邮箱就会收到一封来自Alexa.com的认证信件。按照信中写的,点击需要认证的连接,余下来的事情就是等待了。几天后你会发现,你的评论已经显示在Alexa.com了,那诱人的五角星也飘扬在“Avg. Review”的旁边了:)
看到这里,大家应该明白所谓“五星级”并不是Alexa.com认证的,其实它只是网友们对这个网站的一个评价的平均分数而已。相信大家看了这篇文章以后就不会再对那些所谓号称“☆☆☆☆☆”认证网站迷信了!


全攻略六:如何正确看待ALEXA
在新的更好的排名机构没出来前,ALEXA成为目前比较权威的世界排名网站。但我们不能迷信其排名。一般来说网站访问量越大的网站,排名越准,而排名低于10万的网站其准确性就要大打折扣了。
以后排名规则,就说明了其局限性:

1、 纳入统计的访问量仅来自使用Alexa工具栏(Alexa Toolbar)的用户。也就是说,只有用户下载了Alexa工具栏,并将其嵌入自己的浏览器。这样,该用户访问某个网站的话,访问的记录才能算作被访问网站的访问量。

2、 Alexa工具栏仅在windows操作系统下,Internet Explorer浏览器中使用有效,使用其它操作系统或者浏览器的访问将不能被计数。
Alexa在自己的网站上说,从1997年9月发布Alexa Toolbar的第一个版本起,Alexa Toolbar已累计被下载了1000多万次,现在全世界使用Alexa Toolbar的用户已有上百万人。由于ALEXA至今仍然是一个英文网站,其工具条也是英文版的,除了互联网业界人士外安装ALEXA工具条的用户少之又少。在中国估计很难超过20万的用户。相对于中国8700万网民来说,20万只是其435分之1,我想这样的统计准确性恐怕要大打折扣吧。Alexa自己也承认,“流量数据是基于Alexa用户的设置,可能不是全球互联网人口的一个有代表性的采样”,最多可以说,这个排名大致反映了lexa Toolbar用户的喜好。但不管怎么说,目前它不是一个值得参考的流量排名网站。
ALEXA网站只能作为一个流量排名的参考,对于国内众多网站来说。要提高其流量,提升网站访问量,更最重的还得运用网站诊断分析,这里我们不得不运用一些其它的工具,即一些网站监测系统。如海量在线推出的WISA(网络情报专家)、上海火速公司推出的WWA(全部统计分析)、起源于香港,目前在香港、台湾、上海都有分公司的“易统天下”(CLICKTRACKS)等都是不错的网站监测软件。他们可以详细地监测到互联网用户是通过什么方式找到你的网站的,如搜索引擎可以监测到是通过那个搜索引擎找到你的,甚至是哪个关键词;你的网站访问者来自于哪个地区,可以提供日、周、月、年报表,等等。这样你就可以详细地知道你自己的网站情况,作出诊断,拟定推广计划,从而有效提升自己网站访问量 ...

类别: 无分类 |  评论(0) |  浏览(2226) |  收藏
2006年01月03日 15:56:42

HTML网页数据访问技术漫谈```

-- 由于受到传统的标准HTML语言限制,网页本身并不具备与服务器交互的能力,但是DHTML(动态HTML)的出现使得网页访问外部数据源成为了可能。用户可以开发交互式动态网页或者基于浏览器/服务器架构的应用程序,外部数据通过服务器端(例如ASP、CGI)动态生成,即可实现网页内容的实时更新。本文则主要针对IE浏览器来谈谈如何在网页中通过DHTML访问外部数据源(文件),以及在不对页面进行刷新的情况下实现网页内容依数据源数据的变化而动态更新的具体方法。

一、使用脚本文件技术

---- 我们知道,在网页中可以通过< script >标签的src属性引入脚本文件,并且平等地看待外部脚本和网页内部脚本。因此我们可以将数据内容存储在脚本文件的变量中,然后动态加载该脚本文件,加载成功后即可在网页中直接读取这些数据变量,从而实现网页访问外部数据源目的。示例如下。

---- < input type=button value="加载脚本文件" onclick=getData("data.js") >
---- < script id="scriptID" >< /script >
---- < script language="JavaScript" >
---- function getData (url){
---- scriptID.alt=HTML网页数据访问技术漫谈 src=url;
---- }
---- < /script >

二、应用框架技术

---- DHTML可以实现各个框架页面之间的通信,因此可以利用这一特性,间接实现网页访问外部数据源。具体的做法是,将数据内容存储在另一网页文件中,然后动态载入到主页面的内联框架中(通过< iframe >标签进行创建),加载成功后即可通过动态HTML读取内联框架页面中所包含的数据,我们通常所见的聊天室中聊天内容的动态刷新就是通过这种方法来实现的。示例如下。

---- < iframe id="iframeID" style='display:none;' >< /iframe >
---- < input type=button value="加载网页文件" onclick=getData("data.htm") >
---- < script language="JavaScript" >
---- function getData (url){
---- document.all.iframeID.src = url;
---- }
---- < /script >

三、使用IE内置行为技术

---- 对于行为技术的应用本刊在以前做过多次介绍,相信大家并不陌生。在IE内置的默认行为中有一个download行为可以实现在网页中下载文本文件,因此可以将数据内容按一定格式存储在文本文件(如CSV列表文件)中,然后再通过该行为动态加载,加载成功后即可对该文本文件内容进行解析,进而读取相关数据。示例如下。

---- < script language="JavaScript" >
---- function onDownloadDone(data) {
---- alert(data);
---- }
---- < /script >
---- < input type="button" id="behaviorID" style="behavior:url(#default#download)" value="加载文本文件" onclick=this.startDownload("data.txt",onDownloadDone) >

四、使用新兴的XML技术

---- XML作为一种跨平台的通用结构化数据描述语言,非常适合存储和交换数据的应用。更为重要的是,XML文档易于通过标准XML DOM直接进行访问,而不必编写程序进行文档内容的解析。因此我们可以将数据存储为XML格式文档,然后在网页中加载该XML文档,加载成功后即可在网页中使用XML DOM来读取这些XML数据。在网页中可以通过3种不同的方法实现XML文档动态加载,具体如下。

---- 第一种方法
---- 此方法是直接在网页中插入< xml >标签,定义XML数据岛(island),然后使用脚本动态装入XML文档。由于XML不是标准HTML元素,在使用这种方法时要特别注意浏览器的兼容性。示例如下。

---- < xml id=xmlID >< /xml >
---- < input type=button value="加载XML文档" onclick=alert(getData("data.xml").xml) >
---- < script language="JavaScript" >
---- function getData(url){
---- xmlID.async = false;//设置为同步下载
---- xmlID.load(url);//加载XML文档
---- return xmlID;
---- }
---- < /script >

---- 第二种方法
---- 此方法是在网页中使用脚本代码动态创建XML文档对象,然后使用load的方法加载XML文档。这种方法要求浏览器允许运行ActiveX控件,示例如下。

---- < input type=button value="加载XML文档" onclick=alert(getData("data.xml").xml) >
---- < script language="JavaScript" >
---- function getData(url){
---- var xmldoc = new ActiveXObject("Microsoft.XMLDOM");//创建XML文档对象
---- xmldoc.async = false;
---- xmldoc.load(url);
---- return xmldoc;
---- }
---- < /script >

---- 第三种方法
---- 此方法是通过XMLHTTP对象从服务器获取XML文档,示例如下。

---- < input type=button value="加载XML文档onclick=alert(getData("data.xml").xml) >
---- < script language="JavaScript" >
---- function getDatal(url){
---- var xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");//创建XMLHTTPRequest对象
---- xmlhttp.open("GET",url,false,"","");//使用HTTP GET初始化HTTP请求
---- xmlhttp.send("");//发送HTTP请求并获取HTTP响应
---- return xmlhttp.responseXML;//获取XML文档
---- }
---- < /script >

类别: 无分类 |  评论(0) |  浏览(2397) |  收藏
2006年01月03日 15:56:10

css--精心打造你的网页```CSS技术在网页设计中的运用 ```

多层模式表单(Cascading Style Sheet, CSS)是一种为超文本置标语言(HyperText
   Markup Language,
   HTML)提供增强补充服务的技术,可对每一个HTML的置标(tag)做精雕细刻的修饰。只用HTML制作的网页,对页面内各部分的修饰能力有限且语句烦锁,CSS正是弥补这一缺陷的有力技术,它语句、文法简单,只要在源码中插入STYLE语句就可轻易实现页面内任意文本颜色、背景、边框、行距、字距的添删和修饰等功能,使网页更加生动活泼,从而获得满意的效果。  

  ---- CSS在HTML中以STYLE标识出现,其格式为:一对代表CSS 技术的STYLE置标,内放被修饰的HTML置标,置标的CSS属性放于紧随其后的一对大括号内,每个属性赋值用":",多个属性之间用";"隔开,例:  

  < style >

  a{text-decoration:none; color:yellow}

  a:hover{text-decoration:underline; color:purple}

  p{font-size:20; background:red; color:blue}

  < /style >   

  ----
   将如上代码插入任一HTML文档后,刷新显示,则所有锚点变为普通字体,颜色为黄,但当鼠标移至其上时,则锚点的提示字符变为带下划线的紫色字体;整个文档中被置标P包围的文字将以红底蓝字、字体大小为20个象素的形式出现。如果其中某段文字需另加修饰,可以单独的的形式出现,例如     

  < p style="font-size:30; font-weight

  :bolder; background:white;color:blue" >

  ................

  < /p >   

  ---- 则此段文字白底蓝字,30个象素大小,且字体加粗。随后是一个带有CSS技术的HTML文档的完整例子:  

  < html >

  < head >

  < title > 如何使用CSS < /title >

  < /head >

  < body >

  < style >

  a{text-decoration:none; background:red; color:yellow}

  a:hover{text-decoration:line-through; background:lime}

  h1{text-align:center; font-weight:900;

  border-style:ridge; border-width:medium; border-color:red}

  p.first{font-size:15; font-face:楷体;

  color:blue; border-style:dotted;

  border-width:thin; border-color:blue}

  p.second{font-size:20; word-spacing:10; background:aqua}

  < /style >

  < h1 > 带连框的题头1 < /h1 >

  < a href=mailto:wow20000@hotmail.com?subject=CSS >

  鼠标移至此处, 背景变化

  < /a >

  < p > 未加CSS修饰的段落 < /p >

  < p class=first > 指定CSS修饰的段落 < /p >

  < p class=second > 指定另一种CSS修饰的段落 < /p >

  < /body >

  < /html >   

  ---- 从上例的显示可以看出,CSS是HTML的一个补充,几乎可以对每一个HTML置标进行扩充,使网页充满活力,显示出更加完美的效果。

类别: 无分类 |  评论(0) |  浏览(2558) |  收藏
2006年01月03日 15:55:44

网页特效```鼠标等```  

星星跟着鼠标走
<script language=javascript>
if (!document.layers&&!document.all)
event="test"
function showtip2(current,e,text){

if (document.all&&document.readyState=="complete"){
document.all.tooltip2.innerHTML='<marquee style="border:1px solid black">'+text+'</marquee>'
document.all.tooltip2.style.pixelLeft=event.clientX+document.body.scrollLeft+10
document.all.tooltip2.style.pixelTop=event.clientY+document.body.scrollTop+10
document.all.tooltip2.style.visibility="visible"
}

else if (document.layers){
document.tooltip2.document.nstip.document.write('<b>'+text+'</b>')
document.tooltip2.document.nstip.document.close()
document.tooltip2.document.nstip.left=0
currentscroll=setInterval("scrolltip()",100)
document.tooltip2.left=e.pageX+10
document.tooltip2.top=e.pageY+10
document.tooltip2.visibility="show"
}
}
function hidetip2(){
if (document.all)
document.all.tooltip2.style.visibility="hidden"
else if (document.layers){
clearInterval(currentscroll)
document.tooltip2.visibility="hidden"
}
}

function scrolltip(){
if (document.tooltip2.document.nstip.left>=-document.tooltip2.document.nstip.document.width)
document.tooltip2.document.nstip.left-=5
else
document.tooltip2.document.nstip.left=150
}
</script>
<script language="JavaScript">
function YY_Layerfx(yyleft,yytop,yyfnx,yyfny,yydiv,yybilder,yyloop,yyto,yycnt,yystep) {
if ((document.layers)||(document.all)){
with (Math) {yynextx= eval(yyfnx)}
with (Math) {yynexty= eval(yyfny)}
yycnt=(yyloop && yycnt>=yystep*yybilder)?0:yycnt+yystep;
if (document.layers){
eval(yydiv+".top="+(yynexty+yytop))
eval(yydiv+".left="+(yynextx+yyleft))
}
if (document.all){
eval("yydiv=yydiv.replace(/.layers/gi, '.all')");
eval(yydiv+".style.pixelTop="+(yynexty+yytop));
eval(yydiv+".style.pixelLeft="+(yynextx+yyleft));
}
argStr='YY_Layerfx('+yyleft+','+yytop+',"'+yyfnx+'","'+yyfny+'","'+yydiv+'",'+yybilder+','+yyloop+','+yyto+','+yycnt+','+yystep+')';
if (yycnt<=yystep*yybilder){eval(yydiv+".yyto=setTimeout(argStr,yyto)");}
}

}
function YY_Mousetrace(evnt) {
if (yyns4)
{if (evnt.pageX) {yy_ml=evnt.pageX; yy_mt=evnt.pageY;} }
else{
yy_ml=(event.clientX + document.body.scrollLeft);
yy_mt=(event.clientY + document.body.scrollTop);
}
if (yy_tracescript)eval(yy_tracescript)
}
</script>
<script language="JavaScript">
function PopWin()
{
var PopWin = window.open("new.htm","PopWin","toolbar=no,directries=no,scrollBars=yes,height=350,width=400");
}
</script>
<div id="tooltip2"
style="position:absolute;visibility:hidden;clip:rect(0 150 50 0);width:150px;background-color:lightyellow">
<layer name="nstip" width="1000px" bgcolor="lightyellow"> </layer>
</div>
<div id="yyd0"
style="position:absolute; left:10px; top:50px; width:3px; height:3px; z-index:1; background-color: #19636c; layer-background-color: #19636c; border: 1px none #000000; clip: rect(0 3 3 0)"></div>
<div
id="yyd1"
style="position:absolute; left:20px; top:50px; width:3px; height:3px; z-index:1; background-color: #708574; layer-background-color: #708574; border: 1px none #000000; clip: rect(0 3 3 0)"></div>
<div
id="yyd2"
style="position:absolute; left:30px; top:50px; width:3px; height:3px; z-index:1; background-color: #379bbf; layer-background-color: #379bbf; border: 1px none #000000; clip: rect(0 3 3 0)"></div>
<div
id="yyd3"
style="position:absolute; left:40px; top:50px; width:3px; height:3px; z-index:1; background-color: #25184c; layer-background-color: #25184c; border: 1px none #000000; clip: rect(0 3 3 0)"></div>
<div
id="yyd4"
style="position:absolute; left:50px; top:50px; width:3px; height:3px; z-index:1; background-color: #31bd3c; layer-background-color: #31bd3c; border: 1px none #000000; clip: rect(0 3 3 0)"></div>
<div
id="yyd5"
style="position:absolute; left:60px; top:50px; width:3px; height:3px; z-index:1; background-color: #c11efd; layer-background-color: #c11efd; border: 1px none #000000; clip: rect(0 3 3 0)"></div>
<script>
var yyns4=window.Event?true:false; var yy_mt = 0; var yy_ml = 0;
document.onmousemove = YY_Mousetrace;
yy_tracescript = '';

if (yyns4){ document.captureEvents(Event.MOUSEMOVE);
YY_Mousetrace('',',document.YY_Mousetrace1')}

YY_Layerfx(0,0,'yy_ml+cos((15*sin(yycnt/39.83007847812662))+0)*150*(sin(10+yycnt/20)+0.2)*cos(yycnt/20)','yy_mt+sin((15*sin(yycnt/34.224861639800686))+0)*150*(sin(10+yycnt/20)+0.2)*cos(yycnt/20)','document.layers[\'yyd0\']',2000,true,80,0,1);

YY_Layerfx(0,0,'yy_ml+cos((15*sin(yycnt/27.66510707209673))+30)*150*(sin(10+yycnt/20)+0.2)*cos(yycnt/20)','yy_mt+sin((15*sin(yycnt/9.240632767417667))+30)*150*(sin(10+yycnt/20)+0.2)*cos(yycnt/20)','document.layers[\'yyd1\']',2000,true,80,0,1);

YY_Layerfx(0,0,'yy_ml+cos((15*sin(yycnt/16.45318944579641))+60)*150*(sin(10+yycnt/20)+0.2)*cos(yycnt/20)','yy_mt+sin((15*sin(yycnt/16.0564452288292))+60)*150*(sin(10+yycnt/20)+0.2)*cos(yycnt/20)','document.layers[\'yyd2\']',2000,true,80,0,1);

YY_Layerfx(0,0,'yy_ml+cos((15*sin(yycnt/6.95348954836835))+90)*150*(sin(10+yycnt/20)+0.2)*cos(yycnt/20)','yy_mt+sin((15*sin(yycnt/44.13697049887155))+90)*150*(sin(10+yycnt/20)+0.2)*cos(yycnt/20)','document.layers[\'yyd3\']',2000,true,80,0,1);

YY_Layerfx(0,0,'yy_ml+cos((15*sin(yycnt/33.90077294583733))+120)*150*(sin(10+yycnt/20)+0.2)*cos(yycnt/20)','yy_mt+sin((15*sin(yycnt/2.2378828869411587))+120)*150*(sin(10+yycnt/20)+0.2)*cos(yycnt/20)','document.layers[\'yyd4\']',2000,true,80,0,1);

YY_Layerfx(0,0,'yy_ml+cos((15*sin(yycnt/37.858312521039835))+150)*150*(sin(10+yycnt/20)+0.2)*cos(yycnt/20)','yy_mt+sin((15*sin(yycnt/18.083839795990098))+150)*150*(sin(10+yycnt/20)+0.2)*cos(yycnt/20)','document.layers[\'yyd5\']',2000,true,80,0,1);
</script>
<script>

if (!document.layers&&!document.all)
event="test"
function showtip2(current,e,text){

if (document.all&&document.readyState=="complete"){
document.all.tooltip2.innerHTML='<marquee style="border:1px solid black">'+text+'</marquee>'
document.all.tooltip2.style.pixelLeft=event.clientX+document.body.scrollLeft+10
document.all.tooltip2.style.pixelTop=event.clientY+document.body.scrollTop+10
document.all.tooltip2.style.visibility="visible"
}

else if (document.layers){
document.tooltip2.document.nstip.document.write('<b>'+text+'</b>')
document.tooltip2.document.nstip.document.close()
document.tooltip2.document.nstip.left=0
currentscroll=setInterval("scrolltip()",100)
document.tooltip2.left=e.pageX+10
document.tooltip2.top=e.pageY+10
document.tooltip2.visibility="show"
}
}
function hidetip2(){
if (document.all)
document.all.tooltip2.style.visibility="hidden"
else if (document.layers){
clearInterval(currentscroll)
document.tooltip2.visibility="hidden"
}
}

function scrolltip(){
if (document.tooltip2.document.nstip.left>=-document.tooltip2.document.nstip.document.width)
document.tooltip2.document.nstip.left-=5
else
document.tooltip2.document.nstip.left=150
}
</script>
<script language="JavaScript">
function YY_Layerfx(yyleft,yytop,yyfnx,yyfny,yydiv,yybilder,yyloop,yyto,yycnt,yystep) {
if ((document.layers)||(document.all)){
with (Math) {yynextx= eval(yyfnx)}
with (Math) {yynexty= eval(yyfny)}
yycnt=(yyloop && yycnt>=yystep*yybilder)?0:yycnt+yystep;
if (document.layers){
eval(yydiv+".top="+(yynexty+yytop))
eval(yydiv+".left="+(yynextx+yyleft))
}
if (document.all){
eval("yydiv=yydiv.replace(/.layers/gi, '.all')");
eval(yydiv+".style.pixelTop="+(yynexty+yytop));
eval(yydiv+".style.pixelLeft="+(yynextx+yyleft));
}
argStr='YY_Layerfx('+yyleft+','+yytop+',"'+yyfnx+'","'+yyfny+'","'+yydiv+'",'+yybilder+','+yyloop+','+yyto+','+yycnt+','+yystep+')';
if (yycnt<=yystep*yybilder){eval(yydiv+".yyto=setTimeout(argStr,yyto)");}
}

}
function YY_Mousetrace(evnt) { //v1.2 copyright (c)1999 Yaromat
if (yyns4)
{if (evnt.pageX) {yy_ml=evnt.pageX; yy_mt=evnt.pageY;} }
else{
yy_ml=(event.clientX + document.body.scrollLeft);
yy_mt=(event.clientY + document.body.scrollTop);
}
if (yy_tracescript)eval(yy_tracescript)
}
</script>
<script language="JavaScript">
function PopWin()
{
var PopWin = window.open("new.htm","PopWin","toolbar=no,directries=no,scrollBars=yes,height=350,width=400");
}
</script>

类别: 无分类 |  评论(0) |  浏览(15646) |  收藏
«123 4 5678» Pages: ( 4/8 total )