分类: 网页设计

  • 24个网站统计分析名词

    1. 浏览量:监测页面被浏览的次数。

    广告活动中总浏览量是指:广告为mini-site带来的总PV数。

    2. 二跳、二跳量:用户在被监测页面产生的首次点击数称为“二跳”,所有用户的“二跳”之和为二跳量。二跳率的高低通常反映了用户是否适应页面的结构,是否对页面呈现的内容感兴趣,同时二跳率还可以体现流量的质量。

    3. 二跳率:二跳量与浏览量的比值。

    4. “二跳时间”:指用户打开当前页面到在当前页面产生第一次点击所用的时间。平均二跳时间是指所有用户二跳时间的平均值。平均二跳时间的长短,通常由您的网站结构、网页内容以及来访用户对网站的熟悉程度而定

    5. 流入量:指用户从网站外部(如搜索引擎、其他网站)着陆到网站的次数,一次流入可以带来多次浏览。

    6. 点击量

    广告活动分析频道――用户通过点击广告而打开被监测页面的次数,即广告的点击量

    其它频道――用户在被监测页面所产生的点击数之和。

    7. 展示量:监测对象(如邮件)被展开的次数。

    8. 到达量:广告着陆页面被打开的次数

    9. 转化量:转化量是指转化页面被打开的次数。

    转化页面是指对用户具有特殊意义的页面,比如注册成功页面、购物车页面等,用户到达这些页面后,身份会发生一定的转变,即从普通浏览者升级为您的注册用户或潜在购买用户等。

    10. 独立IP数:互不相同的IP个数。

    11. 用户数:以用户cookie为依据所统计的用户个数,如无法放置cookie则以独立IP为依据。

    12. 平均转化时间:发生转化的时间的平均值。

    13. 平均停留时间:某类用户(如来自某个搜索引擎的用户)在所有被监测页面的总停留时间与这类用户的用户数的比值。

    14. 平均浏览页面:某类用户(如来自某个搜索引擎的用户)浏览的被监测页面的总数与这类用户的用户数的比值。

    15. 用户平均浏览量:浏览量与用户数的比值,即每个用户平均浏览页面的次数。

    16. 场景:指一条由若干个已经存在的网页项目或转化项目所组成的路径,每个网页项目或转化项目作为场景中的一个结点。

    17. 着陆页面:用户从其他网站到达监测网站的第一个页面,记作着陆页面。

    18. 广告描述:系统用户自定义的广告链接或链接组的标识。

    19. 二跳去向:用户在监测页面上第一次点击的对象URL。

    20. 点击二跳比:某一广告描述的二跳量与点击量的比值,即点击转化成二跳的比例,该值可以衡量点击的质量。

    21. 直接转化:指访问者通过广告到达网站后,在第一个会话周期内所形成的转化。

    22. 回归转化:指访问者通过广告到达网站后,在30天内,但不是在第一个会话周期内所形成的转化。(广告点击链接才能统计回归转化量。)

    23. 访次:一个访问者在一个网站,如果连续打开2个页面的时间间隔超过30分钟,则计为该访问者的另一次访问。每超过一次,访问次数加1。

    24. “直接输入网址”:在浏览器中直接敲入网站地址、弹窗广告、Flash 广告和视频广告,客户端广告(MSN,QQ,Foxmail,Outlook,RealPlayer等)、直接点击收藏夹或书签里的URL。

  • jQuery

    jQuery是一种新型的JavaScript库。
    jQuery是一个快速简洁的JavaScript库,简化了HTML文档遍历网络发展迅速,事件处理,动画和Ajax交互。 jQuery是为了改变你编写JavaScript。 (更多…)

  • Nginx web server

    Nginx 是一个很牛的高性能Web和反向代理服务器, 它具有有很多非常优越的特性:

    在高连接并发的情况下,Nginx是Apache服务器不错的替代品: Nginx在美国是做虚拟主机生意的老板们经常选择的软件平台之一. 能够支持高达 50,000 个并发连接数的响应, 感谢Nginx为我们选择了 epoll and kqueue 作为开发模型.
    Nginx作为负载均衡服务器: Nginx 既可以在内部直接支持 Rails 和 PHP 程序对外进行服务, 也可以支持作为 HTTP代理 服务器对外进行服务. Nginx采用C进行编写, 不论是系统资源开销还是CPU使用效率都比 Perlbal 要好很多.
    作为邮件代理服务器: Nginx 同时也是一个非常优秀的邮件代理服务器(最早开发这个产品的目的之一也是作为邮件代理服务器), Last.fm 描述了成功并且美妙的使用经验.
    Nginx 是一个 [#installation 安装] 非常的简单 , 配置文件 非常简洁(还能够支持perl语法), Bugs 非常少的服务器: Nginx 启动特别容易, 并且几乎可以做到7*24不间断运行,即使运行数个月也不需要重新启动. 你还能够 不间断服务的情况下进行软件版本的升级 .

  • IIS 6.0 中配置 HTTP Gzip 压缩

    一. HTTP压缩概述

    HTTP压缩是在Web服务器 和浏览器间传输压缩文本内容的方法。HTTP压缩采用通用的压缩算法如gzip等压缩HTML、JavaScript或 CSS文件。压缩的最大好处就是降低了网络传输的数据量,从而提高客户端浏览器的访问速度。当然,同时也会增加一点点服务器的负担。Gzip是比较常见的 一种HTTP压缩算法。

    本文介绍的HTTP压缩方式,采用的是Windows系统设置的方式,优点是效率较高。

    二. HTTP压缩工作原理

    Web服务器处理HTTP压缩的工作原理如下:

    Web服务器接收到浏览器的HTTP请求后,检查浏览器是否支持HTTP压缩;

    如果浏览器支持HTTP压缩,Web服务器检查请求文件的后缀名;

    如果请求文件是HTML、CSS等静态文件,Web服务器到压缩缓冲目录中检查是否已经存在请求文件的最新压缩文件;

    如果请求文件的压缩文件不存在,Web服务器向浏览器返回未压缩的请求文件,并在压缩缓冲目录中存放请求文件的压缩文件;

    如果请求文件的最新压缩文件已经存在,则直接返回请求文件的压缩文件;

    如果请求文件是ASPX等动态文件,Web服务器动态压缩内容并返回浏览器,压缩内容不存放到压缩缓存目录中。

    三. IIS 6.0中配置HTTP Gzip压缩的步骤:

    1) 打开Internet信息服务(IIS)管理器,右击”网站”->”属性”,选择”服务”。在”HTTP压缩”框中选中”压缩应用程序文件”和”压缩静态文件”,按需要设置”临时目录”和”临时目录的最大限制”;

    2) 在Internet信息服务(IIS)管理器,右击”Web服务扩展”->”增加一个新的Web服务扩展…”,在”新建Web服务扩展”框中输 入扩展名”HTTPCompression”,添加”要求的文件”为C:\WINDOWS\system32\inetsrv\gzip.dll,其中 Windows系统目录根据您的安装可能有所不同,选中”设置扩展状态为允许”;

    3) 使用文本编辑器打开C:\Windows\System32\inetsrv\MetaBase.xml(建议先备份),找到Location =”/LM/W3SVC/Filters/Compression/gzip”,如果需要压缩动态文件,则将 HcDoDynamicCompression设置为”TRUE”,并在HcScriptFileExtensions中增加您要压缩的动态文件后缀名, 如aspx;如果需要压缩静态文件,则将HcDoStaticCompression和HcDoOnDemandCompression设置为 “TRUE”,并在HcFileExtensions中增加您需要压缩的静态文件后缀名,如xml、css等; HcDynamicCompressionLevel和HcOnDemandCompLevel表示需要的压缩率,数字越小压缩率越低;

    4) 编辑完毕后保存MetaBase.xml文件;如果文件无法保存,则可能IIS正在使用该文件。打开”开始”->”管理工具”->”服务”,停止”IIS Admin Service”后,即可保存;

    5) 最后,重新启动IIS。可以到HTTP压缩测试网站验证结果。

  • utf8_unicode_ci与utf8_general_ci的区别

    当前,utf8_unicode_ci校对规则仅部分支持Unicode校对规则算法。一些字符还是不能支持。并且,不能完全支持组合的记号。这主要影响越南和俄罗斯的一些少数民族语言,如:Udmurt 、Tatar、Bashkir和Mari。

    utf8_unicode_ci的最主要的特色是支持扩展,即当把一个字母看作与其它字母组合相等时。例如,在德语和一些其它语言中‘ß’等于‘ss’。

    utf8_general_ci是一个遗留的 校对规则,不支持扩展。它仅能够在字符之间进行逐个比较。这意味着utf8_general_ci校对规则进行的比较速度很快,但是与使用utf8_unicode_ci的校对规则相比,比较正确性较差)。

    例如,使用utf8_general_ci和utf8_unicode_ci两种 校对规则下面的比较相等:

    Ä = A

    Ö = O

    Ü = U

    两种校对规则之间的区别是,对于utf8_general_ci下面的等式成立:

    ß = s

    但是,对于utf8_unicode_ci下面等式成立:

    ß = ss

    对于一种语言仅当使用utf8_unicode_ci排序做的不好时,才执行与具体语言相关的utf8字符集 校对规则。例如,对于德语和法语,utf8_unicode_ci工作的很好,因此不再需要为这两种语言创建特殊的utf8校对规则。

    utf8_general_ci也适用与德语和法语,除了‘ß’等于‘s’,而不是‘ss’之外。如果你的应用能够接受这些,那么应该使用utf8_general_ci,因为它速度快。否则,使用utf8_unicode_ci,因为它比较准确。

  • html5标签参考手册

    之前我已经发过一份w3c标准html5手册,不过因为强的墙的原因,已经无法打开我用的网盘了,这里在发一份文本的吧,我看了下html5的标签多了一些标签,删除了一些在XHTML里面已经不用的标签,不在支持嵌入网页了。不过最近网上抄的火热我也来凑凑热闹,在发一份HTML5的参考手册。 (更多…)

  • HTML 5 !DOCTYPE

    定义和用法
    <!DOCTYPE> 声明是文档中的第一个成分,位于 <html> 标签之前。该标签告知浏览器文档所使用的 HTML 规范。
    HTML 4.01 与 HTML 5 之间的差异
    在 HTML 4.01 中有 3 个不同的文档类型,在 HTML 5 中只有一个:<!DOCTYPE HTML>。
    提示和注释:
    注释:<!DOCTYPE> 标签没有结束标签!

    提示:<!DOCTYPE> 对大小写不敏感。
    HTML 5
    在 HTML5 中,文档类型声明很简单:

    <!DOCTYPE HTML>

    在所有 HTML 文档中规定文档类型很重要,这样浏览器才能了解所预期的文档类型。

    HTML 4.01 中的 doctype 需要引用一个 DTD,这是因为 HTML 4.01 基于 SGML。HTML 5 不基于 SGML,也不需要引用 DTD,但是需要声明文档类型让浏览器按照它们应该的方式来运行。
    属性:NONE

  • 学习和使用web标准的十大理由

    如果你是一个新接触web标准这个概念并且还犹豫是否应该花时间去学习它的web开发者或者设计者,这里有一些让你去学习它的重要理由。对于已经使用web标准的web专业人士,当你需要很好的论据的时候这份清单可能可以派上用场,并且随意添加任何你所想到的好处。

    1. 让自己看起来更专业

    其他web开发者和潜在的雇主将可以看看你的工作,知道你一个喜欢跟上技术的变化的人,并确保你的知识和技能的总是最新的。它将使你像一个真正的web专业人士。

    2. 让你的客户看好

    使用web标准和可访问性相结合的最佳做法,让你的客户有机会谈论他们如何满足所有的人,以及他们如何发现重要的是,每个人都可以使用他们的服务或了解他们产品的信息。 你也避免由于将残疾人,Mac用户和移动手机用户等访问者拒之门外所带来的负面影响。

    3. 最大限度的潜在客户人数

    你不知道访问者将使用什么设备来访问你的网站。你可能认为你知道,但除非你为一个规定使用某种浏览器的公司搭建一个内联网。

    你唯一可以相当肯定的是,他们使用的是一个可以解析的HTML的东西。 通过使用Web标准你可以相当肯定,你所做的使你的网站在尽可能多的浏览设备上工作。

    你不知道访问者将使用什么设备来访问你的网站。你可能认为你知道,但除非你为一个规定使用某种浏览器的公司搭建一个内联网。你唯一可以相当肯定的是,他们使用的是一个可以解析的HTML的东西。 通过使用Web标准你可以相当肯定,你所做的使你的网站在尽可能多的浏览设备上工作。

    4. 更快的加载和减少带宽的使用

    结构良好的标记从表现中分隔的结构和内容,一般比使用表格和间隔图片的标记更加紧凑。 文件更小并且使用户下载更快。 无论怎样,仍然有很多,通过拨号连接到互联网上的人。

    如果您的网站托管计划在免费带宽使用上受限制,较小的文件,将降低成本—提供的流量不会增加。

    5. 为可访问性提供基础

    使用Web标准并不能保证您网站的所有方面会使得残疾人士可访问,但它是一个很好的开始。 确保您的文件是有效的,结构合理和语义化,那你就是在通往拥有一个可访问的网站的路上。

    6. 提高搜索引擎排名

    通过提供干净,结构良好,和语义化标记的写得很好的内容是搜索引擎蜘蛛的美味食物,并会帮助你提升排名。当然,这将会增加的流量,这正是大多数网站拥有者所希望的。

    7. 让你的标记易于维护

    当你需要更新你的网站的时候,你会喜欢费力的使用许多以数千字节倍增的表格和嵌套间隔图片还是只是使用干净的及结构良好的浏览文件?

    删除,插入或修改无表现内容比不得不保证你的所有不整齐的部分正确表现要更容易,更有效。使用CSS来控制布局使整个网站的设计变更容易。

    8. 面向未来的内容

    目前任何人都不可能100%的把握保证,今天这些以电子形式创建和储存的文件在百年后仍可读。甚至五十年。但是如果你从表现中分离内容,并使用当前的Web标准,尽你所能做到最好以确保即使你不在的时候你的内容仍然可读。

    9. 良好的商业意识

    为什么还会有企业主说,没有更多的访问者?一个更快的网站?改进的搜索引擎排名?潜在很好的宣传?这是没有道理这样做。

    10. 这是处事的最好方法

    Web标准方法是我们应该从一开始建立网站就采用的方式。现在我们为何不以正确的方式做一些事,并有一个真正极好的理由对自己感觉良好。

  • 如何书写可维护的CSS代码

    一、在样式表开头添加一个注释块,用以描述这个样式表的创建日期、创建者、标记等备注信息。

    Example Source Code:
    /*
    ———————————
    Site: Site name
    Author: 52CSS.com
    Updated: Date and time
    Updated by: Name
    ———————————
    */ 

    二、包括公用颜色标记

    Example Source Code:
    /*
    ———————————
    COLORS
    Body background: #def455
    Container background: #fff
    Main Text: #333
    Links: #00600f
    Visited links: #098761
    Hover links: #aaf433
    H1, H2, H3: #960
    H4, H5, H6: #000
    ———————————
    */

    三、给ID和Class进行有意义的命名

    不推荐的命名方式:

    Example Source Code:
    .green-box { … }
    #big-text { … } 

    推荐使用的命名方式:

    Example Source Code:
    .pullquote {… }
    #introduction {… } 

    四、将关联的样式规则进行整合

    Example Source Code:
    #header { … }
    #header h1 { … }
    #header h1 img { … }
    #header form { … }
    #header a#skip { … }
    #navigation { … }
    #navigation ul { … }
    #navigation ul li { … }
    #navigation ul li a { … }
    #navigation ul li a:hover { … }
    #content { … }
    #content h2 { … }
    #content p { … }
    #content ul { … }
    #content ul li { … } 

    五、给样式添加清晰的注释

    Example Source Code:
    /*
    ———————————
    header styles
    ———————————
    */
    #header { … }
    #header h1 { … }
    #header h1 img { … }
    #header form { … }
    /*
    ———————————
    navigation styles
    ———————————
    */
    #navigation { … }

  • WEB标准最佳实践:五个需要注意的地方

    WEB标准的CSS网页布局,需要注意的地方有很多。我们已经作过很多介绍,今天介绍五个需要注意的地方。

    一、永远使用小写字母

    Example Source Code:
    不好的做法:

    <DIV>
    <P>Here’s an interesting fact about corn. </P> 
    </DIV>

    好的做法:

    <div> 
    <p>Here’s an interesting fact about corn. </p> 
    </div>

    二、让引号伴随着属性

    Example Source Code:
    不好的做法:
    class=bookchinazcom

    正确的做法:
    class=”bookchinazcom”

    三、有必要的代码注释

    “使得你的代码在长时间内依然能够保持容易理解和维护”。

    作为开发人员,有必要给代码进行注释。

    有注释的代码,它能帮助我们阅读,保持清晰的思维和思路。

    日后也方便快速修改和调试。 不仅方便了自己,也方便了别人。

    四、切勿使用直线

    或许大家有疑问,为什么不提倡使用直线呢,这是一个很有用的标签。

    但大家不要忘记,Web标准一直强调的是表现与内容的分离。

    直线是表现的一部分,将它写放于HTML文档中,显然是不合适的。因而切勿使用直线。

    五、切勿使用内嵌样式

    样式表文件分离到外部样式表文件中,与HTML文档分开。使用内嵌样式就失去了CSS网页布局的意义。但内嵌样式可以在调试是使用,在最终发布网站时,需要去除所有的内嵌样式。

  • 织梦DedeEIMS

    Dede Enterprise Information Management System (简称DedeEIMS)是织梦科技为中小型企业专门开发的一套建站系统,产品继承了织梦内容管理系统简单、易用的特点,并且加入了如:多国语言、在线客服、招聘、产品订单等功能。
    程序的内容创建获取及管理、安全灵活的程序架构,简单易懂的模板标签机制,方便快捷的频道管理以及无限极拓展分类的需求,标准静态化更适合搜索引擎优化(SEO),让你能够轻松打造出专业的企业网站,帮你在互联网拓展公司业务,提升企业的核心竞争力。

    这款程序是不错的,不过眼看着是太监了,dede的seo在业内一直是饱受赞誉的,同样这款企业版的dedecms的阉割版也一样有着不错的SEO,在这里留下这个程序的下载,是为了等以后真的太监了,也留个种,好的企业程序不多,大多是共享类的程序,功能不全甚至是程序加密。 (更多…)

  • 中文 WordPress 工具箱

    我一直坚持用的一款插件,由于不想有太多人和我使用一样的主题,所以一直在使用国外的主题,英文主题对中文的支持一直不是很好,这款插件很不错的解决这个问题,这次在拿出来介绍一下,也用来我以后换主题调用参数使用
    用来解决官方 WordPress 没有照顾到的中文相关问题。使用这个插件,你可以显示随机文章,最新留言,留言最多文章,发表评论最多的网友,以及真正的文章摘要(如果你的模板里使用的是the_excerpt()来调用内容的话)等等,真正截断,没有乱码。

    这个插件由 WordPress 随机文章和 WordPress 评论插件合并增强而来。在激活这个插件之前,请务必先停用这两个插件,不然的话会有冲突。
    安装:

    解压缩,把 mulberrykit.php 上传至 /wp-content/plugins/
    在管理界面里激活 中文 WordPress 工具箱插件(如果你在使用 WordPress 随机文章和 WordPress 评论插件,务必先停用这两个插件。)

    使用说明:
    1、最新回响

    <?php get_recent_comments(); ?>

    调用方式:get_recent_comments($no_comments = 5, $before = ‘<li> ‘, $after = ‘</li>’, $show_pass_post = false)

    $no_comments:显示回响数,缺省为5条;
    $before:每条记录前显示的文字,缺省<li>
    $after:每条记录后显示的文字,缺省</li>
    $show_pass_post:是(true)/否(false)显示保护了的文章,缺省否(false)

    补充:
    kdolphin 在回应里提出,希望在最新回响里不显示自己的回应。这很容易做到。在get_recentcomments() 这个函数里找到这一句

    post_status = ‘publish’

    在后面 加上

    AND comment_author != ‘桑葚’

    就可以了。(把上面的桑葚改成你自己的昵称;引号是半角的)

    注意:最好在wp的插件编辑窗口下改,以免乱码的问题。

    根据网友的建议加上了两个相关的函数:
    仅显示留言,不包括引用 <?php get_recent_comments_only (); ?>
    仅显示引用(包括trackback和pingback)<?php get_recent_trackbacks(); ?>

    调用方式与<?php get_recent_comments(); ?>相同。

    2、最新文章

    根据网友们的反馈,我把这个最新文章的函数又放回来了。

    <?php get_recent_posts(); ?>

    调用方式:get_recent_posts($no_posts = 5, $before = ‘<li>+ ‘, $after = ‘</li>’, $show_pass_post = false, $skip_posts = 0)

    $no_posts:显示文章数,缺省为5条;
    $before:每条记录前显示的文字,缺省<li>
    $after:每条记录后显示的文字,缺省</li>
    $show_pass_post:是(true)/否(false)显示保护了的文章,缺省否(false)
    $skip_posts:跳过多少篇文章,缺省为0;

    3、评论最多的帖子

    <?php get_mostcommented(); ?>

    调用方式:get_mostcommented($limit = 5)

    4、发表评论最多的网友

    <?php get_commentmembersstats(); ?>
    把代码里面的blogmaster改成你自己的名字,可以滤掉你自己的名字。

    调用方式:get_commentmembersstats($threshhold = 5)

    5、随机文章

    由这个插件修改而来:

    a、改了提取excerpt摘要的方式,可适用于中文;
    b、摘要可显示于文章链接的title里,或者直接在页面上,可选;
    c、在文章链接的title里显示日期。

    在模板里调用 <?php random_posts(); ?>

    调用方式: random_posts ($limit = 5, $length = 400, $before = ‘<li>’, $after = ‘</li>’, $show_pass_post = false, $show_excerpt_in_title = true)

    $limit:显示文章数,缺省5篇;
    $length:摘要长度,缺省400;
    $before:每条记录前显示的文字,缺省<li>
    $after:每条记录后显示的文字,缺省</li>
    $show_pass_post:是(true)/否(false)显示保护了的文章,缺省否(false)
    $show_excerpt_in_title:是(true),摘要显示于文章链接的title;否(false),直接显示于页面;缺省是(true)

    6、显示摘要

    某些情况下需要输出摘要,比如搜索结果、档案,还有 rss 输出,这样可以节省流量资源。但是,如果你的文章是中文的话,官方 WordPress 输出的其实并不是摘要,它只是把文章里的 html 代码过滤掉了,但所有文字都还是原样输出了。

    激活这个插件后,输出的就是真正截断的摘要了。

  • PHP的三个小秘密

    PHP代码的最后一行可以不带 ;分号 不会导致PHP错误。
    && 运算符有时候可以代替 if  比如 $zhuxiaotian=’123′; echo !$zhuxiaotian && die(‘你是笨蛋’);
    三元操作符时执行多条件运算代替if..众所周知 三元操作符就两句 中间不能插入; 分号否则就会报错,有时候需要添加什么东西或者运算就会导致PHP错误,但是我们通过这样格式做很多事。

    <?php
    $a=’sadsad’;/若是空则 C变量为333 则不空 C变量为 sss
    $a?($b=’123′).($c=’333′):($b=’456′).($c=’sss’);
    echo $c;
    ?>

  • MariaDB

    MySQL联合创始人Monty Widenius提供了MySQL的分支MariaDB候选版本。据报道MariaDB 5.1完全兼容MySQL 5.1,这个版本早在2008年11月就发布了,增加了很多新的功能和若干个新的补丁程序。开发者称这个候选版本非常稳定,将在不久的将来发布。

      MariaDB基于事务的Maria存储引擎,替换了MySQL的MyISAM存储引擎,它使用了Percona的 XtraDB,InnoDB的变体,分支的开发者希望提供访问即将到来的MySQL 5.4 InnoDB性能。这个版本还包括了 PrimeBase XT (PBXT) 和 FederatedX 存储引擎。

      这个项目的更多的代码都改编于 MySQL 6.0,例如  “pool of threads”功能提供解决多数据连接问题。MariaDB 5.1.41 RC可以到这里下载,32位和64位已编译Linux版本,还包括源代码包。MariaDB基于GPL 2.0发布。

  • wordpress数据库备份

      wordpress数据库备份虽然是有插件的,但是对于数据库过大的wordpress来说,还一直没有好的解决办法,我的博客应该还不算危机的,一些其他博友的恐怕已经有几十兆的数据库了,这样压缩了以后恐怕也有几兆数据,在以后呢?恐怕很危险了,因为自动备份插件发送邮箱,大附件是行不通的这个是没有办法的,所以数据库大了,只能另寻方法,另外对于用虚拟主机的朋友来说只能用phpmyadmin这样的网页数据库管理软件来恢复数据,但是这样也同样存在一个问题,页面提交数据是有限的,一般都是提交不了大数据的,所以数据库大了数据的恢复也是一个大问题。

    本着解决这个问题,我看了下国内主流程序都采用分卷备份的方法,比如discuz、dedecms等等几乎无一不是这样,那么wordpress似乎并没有分卷备份的功能,插件是否用我也不太清楚,但是是可以再其他程序里面提取一份备份功能的。这样就能分卷备份wordpress数据了,那么想好思路决定用dedecms提取,这个是可以自动检测到表的默认备份系统自带的数据表,但是提示额外的数据表,一样可以备份。另外还有一个就是专门针对mysql数据库备份开发的程序,帝国备份,这个是我刚测试使用的,效果还不错,能够解决mysql的问题,自然wordpress也解决了,所以就推荐使用类似备份程序。如果wordpress有类似的备份插件也可以介绍给我。

  • MySQL存储引擎INNODB,MyISAM的区别及其启动方法

    存储引擎是什么?
    MySQL中的数据用各种不同的技术存储在文件(或者内存)中。这些技术中的每一种技术都使用不同的存储机制、索引技巧、锁定水平并且最终提供广泛的不同的功能和能力。通过选择不同的技术,你能够获得额外的速度或者功能,从而改善你的应用的整体功能。
    例如,如果你在研究大量的临时数据,你也许需要使用内存存储引擎。内存存储引擎能够在内存中存储所有的表格数据。又或者,你也许需要一个支持事务处理的数据库(以确保事务处理不成功时数据的回退能力)。

    这些不同的技术以及配套的相关功能在MySQL中被称作存储引擎(也称作表类型)。MySQL默认配置了许多不同的存储引擎,可以预先设置或者在MySQL服务器中启用。你可以选择适用于服务器、数据库和表格的存储引擎,以便在选择如何存储你的信息、如何检索这些信息以及你需要你的数据结合什么性能和功能的时候为你提供最大的灵活性。
    选择如何存储和检索你的数据的这种灵活性是MySQL为什么如此受欢迎的主要原因。其它数据库系统(包括大多数商业选择)仅支持一种类型的数据存储。遗憾的是,其它类型的数据库解决方案采取的“一个尺码满足一切需求”的方式意味着你要么就牺牲一些性能,要么你就用几个小时甚至几天的时间详细调整你的数据库。使用MySQL,我们仅需要修改我们使用的存储引擎就可以了。
    在这篇文章中,我们不准备集中讨论不同的存储引擎的技术方面的问题(尽管我们不可避免地要研究这些因素的某些方面),相反,我们将集中介绍这些不同的引擎分别最适应哪种需求和如何启用不同的存储引擎。为了实现这个目的,在介绍每一个存储引擎的具体情况之前,我们必须要了解一些基本的问题。
    如何确定有哪些存储引擎可用
    你可以在MySQL(假设是MySQL服务器4.1.2以上版本)中使用显示引擎的命令得到一个可用引擎的列表。
    mysql> show engines;
    +————+———+—————————————————-+
    | Engine | Support | Comment |
    +————+———+—————————————————–+
    | MyISAM | DEFAULT | Default engine as of MySQL 3.23 with great performance |
    | HEAP | YES | Alias for MEMORY |
    | MEMORY | YES | Hash based, stored in memory, useful for temporary tables |
    | MERGE | YES | Collection of identical MyISAM tables |
    | MRG_MYISAM | YES | Alias for MERGE |
    | ISAM | NO | Obsolete storage engine, now replaced by MyISAM |
    | MRG_ISAM | NO | Obsolete storage engine, now replaced by MERGE |
    | InnoDB | YES | Supports transactions, row-level locking, and foreign keys |
    | INNOBASE | YES | Alias for INNODB |
    | BDB | NO | Supports transactions and page-level locking |
    | BERKELEYDB | NO | Alias for BDB |
    | NDBCLUSTER | NO | Clustered, fault-tolerant, memory-based tables |
    | NDB | NO | Alias for NDBCLUSTER |
    | EXAMPLE | NO | Example storage engine |
    | ARCHIVE | NO | Archive storage engine |
    | CSV | NO | CSV storage engine |
    +————+———+——————————————————-+  
    16 rows in set (0.01 sec)   这个表格显示了可用的数据库引擎的全部名单以及在当前的数据库服务器中是否支持这些引擎。
    对于MySQL 4.1.2以前版本,可以使用mysql> show variables like “have_%”(显示类似“have_%”的变量):

    mysql> show variables like “have_%”;
    +——————+———-+
    | Variable_name | Value |
    +——————+———-+
    | have_bdb | YES |
    | have_crypt | YES |
    | have_innodb | DISABLED |
    | have_isam | YES |
    | have_raid | YES |
    | have_symlink | YES |
    | have_openssl | YES |
    | have_query_cache | YES |
    +——————+———-+
    8 rows in set (0.01 sec)  

    你可以通过修改设置脚本中的选项来设置在MySQL安装软件中可用的引擎。如果你在使用一个预先包装好的MySQL二进制发布版软件,那么,这个软件就包含了常用的引擎。然而,需要指出的是,如果你要使用某些不常用的引擎,特别是CSV、RCHIVE(存档)和BLACKHOLE(黑洞)引擎,你就需要手工重新编译MySQL源码 。
    使用一个指定的存储引擎
    你可以使用很多方法指定一个要使用的存储引擎。最简单的方法是,如果你喜欢一种能满足你的大多数数据库需求的存储引擎,你可以在MySQL设置文件中设置一个默认的引擎类型(使用storage_engine 选项)或者在启动数据库服务器时在命令行后面加上–default-storage-engine或–default-table-type选项 。

    更灵活的方式是在随MySQL服务器发布同时提供的MySQL客户端时指定使用的存储引擎。最直接的方式是在创建表时指定存储引擎的类型,向下面这样:

      CREATE TABLE mytable (id int, title char(20)) ENGINE = INNODB  
    你还可以改变现有的表使用的存储引擎,用以下语句:

      ALTER TABLE mytable ENGINE = MyISAM  
    然而,你在以这种方式修改表格类型的时候需要非常仔细,因为对不支持同样的索引、字段类型或者表大小的一个类型进行修改可能使你丢失数据。如果你指定一个在你的当前的数据库中不存在的一个存储引擎,那么就会创建一个MyISAM(默认的)类型的表。
    各存储引擎之间的区别

    为了做出选择哪一个存储引擎的决定,我们首先需要考虑每一个存储引擎提供了哪些不同的核心功能。这种功能使我们能够把不同的存储引擎区别开来。我们一般把这些核心功能分为四类:支持的字段和数据类型、锁定类型、索引和处理。一些引擎具有能过促使你做出决定的独特的功能,我们一会儿再仔细研究这些具体问题。
    字段和数据类型
    虽然所有这些引擎都支持通用的数据类型,例如整型、实型和字符型等,但是,并不是所有的引擎都支持其它的字段类型,特别是BLOG(二进制大对象)或者TEXT文本类型。其它引擎也许仅支持有限的字符宽度和数据大小。
    这些局限性可能直接影响到你可以存储的数据,同时也可能会对你实施的搜索的类型或者你对那些信息创建的索引产生间接的影响。这些区别能够影响你的应用程序的性能和功能,因为你必须要根据你要存储的数据类型选择对需要的存储引擎的功能做出决策。

    锁定

    数据库引擎中的锁定功能决定了如何管理信息的访问和更新。当数据库中的一个对象为信息更新锁定了,在更新完成之前,其它处理不能修改这个数据(在某些情况下还不允许读这种数据)。
    锁定不仅影响许多不同的应用程序如何更新数据库中的信息,而且还影响对那个数据的查询。这是因为查询可能要访问正在被修改或者更新的数据。总的来说,这种延迟是很小的。大多数锁定机制主要是为了防止多个处理更新同一个数据。由于向数据中插入信息和更新信息这两种情况都需要锁定,你可以想象,多个应用程序使用同一个数据库可能会有很大的影响。

    不同的存储引擎在不同的对象级别支持锁定,而且这些级别将影响可以同时访问的信息。得到支持的级别有三种:表锁定、块锁定和行锁定。支持最多的是表锁定,这种锁定是在MyISAM中提供的。在数据更新时,它锁定了整个表。这就防止了许多应用程序同时更新一个具体的表。这对应用很多的多用户数据库有很大的影响,因为它延迟了更新的过程。
    页级锁定使用Berkeley DB引擎,并且根据上载的信息页(8KB)锁定数据。当在数据库的很多地方进行更新的时候,这种锁定不会出现什么问题。但是,由于增加几行信息就要锁定数据结构的最后8KB,当需要增加大量的行,也别是大量的小型数据,就会带来问题。

    行级锁定提供了最佳的并行访问功能,一个表中只有一行数据被锁定。这就意味着很多应用程序能够更新同一个表中的不同行的数据,而不会引起锁定的问题。只有InnoDB存储引擎支持行级锁定。

    建立索引

    建立索引在搜索和恢复数据库中的数据的时候能够显著提高性能。不同的存储引擎提供不同的制作索引的技术。有些技术也许会更适合你存储的数据类型。
    有些存储引擎根本就不支持索引,其原因可能是它们使用基本表索引(如MERGE引擎)或者是因为数据存储的方式不允许索引(例如FEDERATED或者BLACKHOLE引擎)。

    事务处理
    事务处理功能通过提供在向表中更新和插入信息期间的可靠性。这种可靠性是通过如下方法实现的,它允许你更新表中的数据,但仅当应用的应用程序的所有相关操作完全完成后才接受你对表的更改。例如,在会计处理中每一笔会计分录处理将包括对借方科目和贷方科目数据的更改,你需要要使用事务处理功能保证对借方科目和贷方科目的数据更改都顺利完成,才接受所做的修改。如果任一项操作失败了,你都可以取消这个事务处理,这些修改就不存在了。如果这个事务处理过程完成了,我们可以通过允许这个修改来确认这个操作。

  • htm与html的区别

    实际上HTM与HTML没有本质意义的区别,只是为了满足DOS仅能识别8+3的文件名而已,因为一些老的系统(win32)不能识别四位文件名。

    W3C目前自然是建议使用HTML。

  • 修改WordPress标签云的字体大小以及显示数量

    wp-includes/category-template.php,打开并搜索wp_tag_cloud,这个就是标签云的调用函数了,查了一下参数表,得到wp_tag_cloud函数的参数如下:

    smallest – Adjusts the size of the smallest tags in the cloud. Default is “8″.
    largest – Adjusts the size of the biggest tags in the cloud. Default is “22″.
    unit – Sets the unit type for font size (ie point or em). Default is “pt”.
    number – How many tags will display in the cloud. Default is “45″.
    format – “Flat” displays an inline cloud with each term separated by whitespace. “List” generates an unordered list. “Array” lets you define an array of tags. Default is “flat”.
    orderby – Sort the cloud by “name” or “count”. Default is “name”.
    order – Sort the cloud in ascending or descending order. Default is “ASC”.

    对照修改即可,其中:

    unit=是字体大小的单位,使用我们熟悉的px最好;

    smallest=是指最小字体大小,自己修改;

    largest=是指最大字体大小,自己修改。

    还可以使用number=来设置标签的显示数量,orderby=来使得标签云按照标签的使用次数来排列等等。

  • PHP取得随机数或随机字符串

    作用:取得随机字符串

    参数:
    1、(int)$length = 32 #随机字符长度
    2、(int)$mode = 0 #随机字符类型,0为大小写英文和数字,1为数字,2为小写字母,3为大写字母,4为大小写字母,5为大写字母和数字,6为小写字母和数字

    定义类代码

    < ?php
    class getRandstrClass
    {
    function getCode ($length = 32, $mode = 0)
    {
    switch ($mode) {
    case '1':
    $str = '1234567890';
    break;
    case '2':
    $str = 'abcdefghijklmnopqrstuvwxyz';
    break;
    case '3':
    $str = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
    break;
    case '4':
    $str = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz';
    break;
    case '5':
    $str = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890';
    break;
    case '6':
    $str = 'abcdefghijklmnopqrstuvwxyz1234567890';
    break;
    default:
    $str = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890';
    break;
    }

    使用说明:
    1.将以上代码另存为random.php
    2.在需要的页面引入random.php
    < ?php require_once('random.php'); ?>
    3. 使用之前定义的类

    $randString = ”;
    $len = strlen($str)-1;

    for($i = 0;$i < $length;$i ++){
    $num = mt_rand(0, $len);
    $randString .= $str[$num];
    }
    return $randString ;
    }
    }
    ?>

    代码:
    < ?php
    $code = new getRandstrClass();
    $length = 32;
    $mode = 0;
    $str = $code->getCode($length, $mode);
    echo $str;
    ?>