Akawa

ETY001的博客

最近刚刚搭建起属于自己的博客,心情无比激动,可是一直博客不被各个搜索引擎所索引,甚是头疼。想想在网易、百度这样的网站下面建立个自己的博客,虽然限制很多,但是也是有好处的,好处就是你发表的博文会很快被人搜索到,我想这也跟他们的网站热度有关吧,尽管用户获得的是2级或者3级域名。

于是乎,开始转入SEO的学习。我对这个活现在的理解是,这就是一个细致活,非常考验思考细节的能力和你的耐心。就现在接触的这点内容,我稍作了总结,总结如下:

1. 加强关键字工作,最初级的工作就是如何利用meta标签来开始宣传。以WordPress为例,安装All in one SEO插件就可以很好的解决这个问题。在该插件的设置中,可以对<title>、keyword、description等进行设置,这样就非常的方便了。
2. 加强网站内网页之间的必要联系。这个主要是通过把在文章中的本站标签做成超链接,连接到以该标签分类的页面上的功能,以及边栏或低栏中的最热文章、最新评论等功能,还有文章最后的相关链接来增加网站访问者在该网站的逗留时间,也提高了网站的访问深度。如果你是用的WordPress,你可以尝试安装Keyword Link Plugin插件。
3. 合理的安排布局一些广告或者友情链接,通过他人来提升网站。
4. 最后一条,也是最重要的一条,心无SEO胜似有SEO。什么意思呢?这就是说,作为站长,你的精力应该更多的放在如何增强用户访问你网站的体验上,以及你的网站有多少内容对于大多数人来说有价值,而不是每天总想着应该采取什么措施来提高网站人气。有料才是提升网站人气的关键,SEO只是辅助工作,他只是让用户更容易从你这里找到自己需要的东西。

以上就是我想和大家分享的一点点SEO心得,还请路过的高人能指点一二。

转自:http://blog.chinaunix.net/u1/39544/showart_308078.html

可能玩Linux的朋友都知道fstab这个文件,如果要用好linux,熟悉linux的一些核心配置文件是必要的,而fstab则是其中之一。这个文件描述系统中各种文件系统的信息,应用程序读取这个文件,然后根据其内容进行自动挂载的工作。因此,我们需要理解其中的内容,了解它如何与mount命令配合工作,并能够针对自己的情况进行修改。

作为系统配置文件,fstab通常都位于/etc目录下,它包括了所有分区和存储设备的信息,以及它们应该挂载到哪里,以什么样子的方式挂载。如果遇到一些类似于无法挂载你的windows分区阿,无法使用你的光驱阿,无法对某个分区进行写入操作阿什么的,那么基本上可以断定,你的fstab内容有问题了。也就是说,你可以通过修改它来搞定这些问题,而不用去论坛冰天雪地裸体跪求答案了。

说了半天,/etc/fstab其实就是一个文本文件,用gedit或者vi都可以打开,当然,前提是root权限。在这个文件中,每个文件系统(包括分区或者设备)用一行来描述,在每一行中,用空格或TAB符号来分隔各个字段,文件中以*开头的行是注释信息。Fstab文件中的纪录的排序十分重要。因为 fsck,mount或umount等程序在做它们的工作时会按此顺序进行本。下面进行详细的讲解,本文假设读者已经有挂载文件系统和分区的基础知识。

Table of Contents

1. 第一、二列:设备和默认挂载点
2. 第三列:文件系统类型
3. 第四列:挂载选项
4. 第五、六列:dump和fsck选项

在讲解之前要说一下,每个人所使用的系统情况都是不同的,包括硬件种类,所用系统等,因此fstab文件肯定是有所差异的。但是其基本结构,如上所述,都不会变。所以我们先以一个fstab内容作为模板进行讲解。

首先请看下面这个例子:

/dev/hda2	/	ext2	defaults	1 1
/dev/hdb1	/home	ext2	defaults	1 2
/dev/cdrom	/media/cdrom	auto	ro,noauto,user,exec	0 0
/dev/fd0	/media/floppy	auto	rw,noauto,user,sync	0 0
proc	/proc	proc	defaults	0 0
/dev/hda1	swap	swap	pri=42	0 0

这些看起来毫无意义的字符代表了什么?在对应相应分区或者存储设备信息的每一行中,每一列又是什么意思?先大体讲一下,第一列表示设备的名称,第二列表示该设备的挂载点,第三列是文件系统,第四列是挂载选项,第五列是dump选项(用一个数字表示),第六列(接下来的数字)表示文件系统检查选项。好了,接下来,就要详细介绍这些参数的具体含义了。

第一、二列:设备和默认挂载点说实话,第一列和第二列的内容是最简单最直接的,它们的作用就是告诉mount命令,我想挂载什么分区或者什么设备,以及我所希望的挂载点在哪里。在fstab中为某一个设备指定的挂载点是其默认挂载点,也就是当你在挂载目录的时候没有手工指定其他目录的话,系统就将该设备挂载到这个目录。大多数Linux发行版都会为挂载点创建专门的目录,大多数是在/mnt下,但是一些发行版(比如SUSE或者ubuntu)是在 /media下。笔者使用的是ubuntu,所以示例信息中也是用的/media目录。

按照我们给出的fstab示例,如果你敲入命令

$ mount /dev/fd0

你的软驱就将挂载到/media/floppy,因为这是你告诉系统的软驱默认挂载点。如果没有这个信息,当你敲入mount命令时,mount会感到很困惑:该死的,你想让我把这玩意挂载到哪里去呢?当然,如果你看fstab中发行版给你指定的默认挂载点不顺眼,也可以自由修改它,修改成任何一个你希望的目录都可以。如果还不存在,就首先创建这个目录。要知道,fstab是不会把所有工作都给你包干的哦。

另外,有一些分区和存储设备是在Linux系统启动的时候就自动挂载的,比如,让我们看看刚才列出来的fstab示例信息,有两行是这样的:

/dev/hda2	/	ext2	defaults	1 1
/dev/hdb1	/home	ext2	defaults	1 2

正如刚才我们讲到的那样,这两行表示/dev/hda2默认挂载到/根目录,而/dev/hdb1则默认挂载到/home目录,。这些工作在你Linux系统启动的时候就会通过读取fstab自动完成,否则的话……想象你会遭受什么样的折磨吧,所有的程序都在/根目录下,而你却无法使用,因为你没有挂载/根目录!恩,我保证,这将是一次让人沮丧的系统使用经历。

除了显示的使用设备名,你可以使用设备的UUID或设备的卷标签,例如,你可以在这个字段写成“LABAL=root”“UUID=3e6be9de- 8139-11d1-9106-a43f08d823a6”,这将使系统更具伸缩性。例如,如果你的系统添加或移除了一个SCSI硬盘,这有可以改变你的设备名,但它不会修改你的卷标签。

对于NFS mount操作,这个字段应该包含host:dir格式的信息,例如:knuth.aeb.nl:/,对于进程文件系统procfs,使用proc。

第三列:文件系统类型fstab中的第三列指示了设备或者分区的文件系统类型。它支持很多种类的文件系统,我们在这里只介绍最为常用的。如果想了解你的 kernel目前支持哪些文件系统,可以查看/proc/filesystems的内容。如果这个字段定义为swap,这条纪录将关联到一个用于交换目的的文件或分区。如果这个字段定义为ignored,这行将被忽略。这对于显示目前没有使用的分区非常有用。

ext2 和 ext3: Linux下的Ext2文件系统,是 GNU/Linux系统中标准的文件系统,其特点为存取文件的性能极好,对于中小型的文件更显示出优势,这主要得利于其簇快取层的优良设计。至于Ext3 文件系统,它属于一种日志文件系统,是对ext2系统的扩展。日志式文件系统的优越性在于,它会将整个磁盘的写入动作完整记录在磁盘的某个区域上,以便有需要时可以回朔追踪。由于详细纪录了每个细节,故当在某个过程中被中断时,系统可以根据这些记录直接回朔并重整被中断的部分,而不必花时间去检查其他的部分,故文件系统检测不一致时,重整的工作速度相当快,几乎不需要花时间。

reiserfs:ReiserFS是一个非常优秀的文件系统。也是最早用于Linux的日志文件系统之一,其机制比Ext3要先进得多,风雷小弟一直使用的就是它,很多发行版现在也把它作为默认文件系统了。可惜其作者前段时间出事了……具体情况就不说了,也不知道下一代reiserfs4还能不能出来,因为ext4都有了。

swap: Swap,即交换区,把它想象成虚拟内存就行了。

vfat 和 ntfs:一看就知道是Windows分区格式了,呵呵。98,me等系统都是使用的vfat,也就是最流行的fat32格式,而NT系列则多使用 NTFS,当然也不是固定的,因此2000或者XP系统要具体情况具体分析。当初Linux对NTFS的写入支持不好,所以大多数资料都建议用户使用 vfat格式,但是现在支持已经很好了,即使不重新编译内核,也可以通过ntfs-3g来进行写入支持(具体方法请参考这篇文章),因此不用太在意这个了。

auto:当然,这不是一个文件系统类型。auto只是表示,文件系统的类型将被自动检测。在上面的示例中,你会发现软驱和光驱的文件系统类型都是 auto,为什么呢?因为它们的文件系统类型随时都可能改变,比如软驱,优盘这种设备,可能今天是vfat格式,明天你就把它格式化成了ntfs,因此,最明智的做法就是告诉系统,我没法确定这东西的当前类型,还是你自己检测吧。

udf: 由于刻录光驱越来越流行,现在很多发行版自带的fstab中,光驱的文件格式类型是UDF,UDF是Universal DiscFormat的缩写,与ISO 9660格式相容。它采用标准的封装写入技术(PW,PacketWriting)将CD-R/CD-RW当作硬盘使用,用户可以在光盘上修改和删除文件。利用UDF格式进行刻录时,刻录软件将数据打包,并在内存中临时建立一个特殊文件目录表,同时接管系统对光盘的访问。

iso9660: 很多光驱也使用的这个选项。ISO9660是一种描述适合CD盘片的电脑文件结构的国际标准。采用此标准的盘片可以在不同的操作系统上使用,如MAC和Windows。

第四列:挂载选项fstab中的第四列表示设备或者分区所需要的挂载选项。这一列也是fstab中最复杂最容易出错的一列,当然,只要你能知道一些最常用的选项是什么意思,就可以让你从头疼中解脱出来。如果要把可用的选项一项一项介绍……恩,我估计我会写到明天,所以,我还是只是分析最常用的一些选项,如果你想知道更多的东西,还是求助于man吧。

auto 和 noauto: 这是控制设备是否自动挂载的选项。auto是默认选择的选项,这样,设备会在启动或者你使用mount-a命令时按照fstab的内容自动挂载。如果你不希望这样,就使用noauto选项,如果这样的话,你就只能明确地通过手工来挂载设备。

user 和 nouser:这是一个非常有用的选项,user选项允许普通用户也能挂载设备,而nouser则只允许root用户挂载。nouser是默认选项,这也是让很多Linux新手头疼的东西,因为他们发现没有办法正常挂载光驱,Windows分区等。如果你作为普通身份用户遇到类似问题,或者别的其他问题,就请把user属性增加到fstab中。

exec 和 noexec:exec允许你执行对应分区中的可执行二进制程序,同理,noexec的作用刚好相反。如果你拥有一个分区,分区上有一些可执行程序,而恰好你又不愿意,或者不能在你的系统中执行他们,就可以使用noexec属性。这种情况多发生于挂载Windows分区时。exec是默认选项,理由很简单,如果noexec变成了你/根分区的默认选项的话……

ro: 以只读来挂载文件系统。
rw: 以可读可写的属性来挂载系统。

sync 和 async:对于该文件系统的输入输出应该以什么方式完成。sync的意思就是同步完成,通俗点讲,就是当你拷贝一个东西到设备或者分区中时,所有的写入变化将在你输入cp命令后立即生效,这个东西应该立马就开始往设备或者分区里面拷贝了。而如果是async,也就是输入输出异步完成的话,当你拷贝一个东西到设备或者分区中时,可能在你敲击cp命令后很久,实际的写入操作才会执行,换句话说,就是进行了缓冲处理。

有时候这种机制蛮不错的,因为sync会影响你系统的运行速度,但是这也会带来一些问题。想一想,当你希望将一个文件拷贝到u盘上时,你执行了cp命令,却忘记执行umount命令(它会强行将缓冲区内容写入),那么你拷贝的文件实际上并没有在u盘上面。如果你是使用的mv命令,而你又很快将u盘拔出…… 恭喜你,文件会从这个星球上消失的。因此,虽然async是默认属性,但是对于u盘,移动硬盘这种可移动存储设备,最好还是让他们使用sync选项。

defaults: 所有选项全部使用默认配置,包括rw, suid, dev, exec, auto, nouser, 和 async。
一般用户没有特殊需求,直接使用defaults就可以了。看完介绍,我们再回过头去看看前面的示例内容,以光驱为例,主要关注挂载选项这里,可以看到,光驱和其他分区设备的不同是ro,因为普通光驱是只读的。而exec则让你可以从光驱上直接执行某些程序。

第五、六列:dump和fsck选项Dump和fsck?这是什么东西?恩,dump是一个备份工具,而fsck是一个文件系统扫描检查工具。我不会在这里详细介绍它们,因为用man或者google都可以获得更加详细的信息。

fstab的第五列是表示dump选项,dump工具通过这个选项位置上的数字来决定文件系统是否需要备份。如果是0,dump就会被忽略,事实上,大多数的dump设置都是0。而第六列是fsck选项,fsck命令通过检测该字段来决定文件系统通过什么顺序来扫描检查,根文件系统/对应该字段的值应该为 1,其他文件系统应该为2。若文件系统无需在启动时扫描检查,则设置该字段为0。

我的 fstab:

/dev/hdc /media/cdrom0 udf,iso9660 user,utf8 0 0

/dev/sdb /media/sdb vfat rw,user,utf8,noauto,sync,umask=0 0 0

/dev/sdb1 /media/sdb1 vfat rw,user,utf8,noauto,sync,umask=0 0 0

/dev/sdc /media/sdc vfat rw,user,utf8,noauto,sync,umask=0 0 0

#LABEL=USB-FAT /media/USB-FAT vfat rw,user,utf8,auto,sync,umask=0 0 0

#LABEL=USB-EXT3 /media/USB-EXT3 ext3 rw,user,auto,sync 0 0

# windows

/dev/sda1 /media/c ntfs-3g silent,umask=0,locale=zh_CN.utf8 0 0

/dev/sda5 /media/d vfat auto,user,utf8,umask=0 0 0

/dev/sda6 /media/e ntfs-3g silent,umask=0,locale=zh_CN.utf8 0 0

/dev/sda7 /media/f ntfs-3g silent,umask=0,locale=zh_CN.utf8 0 0

附mbr备份命令:

如果你的是IDE硬盘代码:

sudo dd if=/dev/hda of=~/linux.bin bs=512 count=1

如果你硬盘的被识别为sda 代码:

sudo dd if=/dev/sda of=~/linux.bin bs=512 count=1

很多时候可能是IE与FireFox对于同一个元素的初定义不同造成的成兼容性问题。

解决方案:把元素的margin和padding都设为0。

到目前为止,我所发现出现这种问题的元素有:ul、标题元素(h1、h2等)。

今天终于研究出来了编码问题的解决方案了。

网上多数地方只说了要在UTF-8的文件头加上

1
<%@LANGUAGE="VBSCRIPT"   CODEPAGE="65001%>

在GB2312的文件头加上

1
<%@LANGUAGE="VBSCRIPT"   CODEPAGE="936"%>

以上两种针对ASP页面,其实还有一点都忽略了,就是文件内容本身。

也就是说,如果你一开始是按照UTF-8 来进行的文件编写,那么如果想换成GB2312的话,
只是加上<%@LANGUAGE="VBSCRIPT"   CODEPAGE="936"%> 是不够的,还需要彻底的把已经编过的文档转换编码才行。
如果你仔细观察的话,在DW的源码区中,UTF-8状态下编写的注释符是英文半角状态的单撇,而在GB2312状态下编写的注释符
是一个类似中文状态的逗号,并且还有一点,在UTF-8状态中,你会发现源代码中的汉字与英文状态的半角标点的相对位置看上去
很别扭,不像是平时书写的样子,比如说逗号都在文字的中间线上,而在GB2312状态下就能正常显示。

另外,转换的方法就是用记事本打开待转化的文件,选择另存为,在最下面选择编码,ANSI是GB2312,UTF-8就不用说了。

如何准确判断conn1里面有没有名为name1的表? 
 
—————————————————————  

1
2
3
4
5
6
7
8
变通办法  
on  error  resume  next  
rs.open  "name1",conn1  
 
if  not  err.number=0  then  
 Err.Clear      '清除该错误  
‘这里添加表不存在的处理  
end  if

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
<!--Asp读取access数据库生成XML文件(gb2312 总穆修正版) 程序修改自网络 仅帮助新手入门 Zongmu-->
<%
dim conn,connstr,rs,sql
    connstr="provider=Microsoft.Jet.OLEDB.4.0;data source="&Server.MapPath("zongmu_db/zongmu_km.mdb")&";"
set conn=Server.CreateObject("ADODB.Connection")
set rs=Server.CreateObject("ADODB.RecordSet")
    conn.open connstr
%>

<!-- more -->
<%
if request("action")="zongmu_shengcheng" then

set conn=Server.CreateObject("ADODB.Connection")
set rs=Server.CreateObject("ADODB.RecordSet")
    conn.open connstr
sql="select * from content order by id desc"
    rs.open sql,conn,1,1
xmlfile=Server.MapPath("test.xml")
Set fso = CreateObject("Scripting.FileSystemObject")
Set MyFile = fso.CreateTextFile(xmlfile,True)

MyFile.WriteLine("<?xml version=""1.0"" encoding=""gb2312""?>")
MyFile.WriteLine("<config>")

do while not rs.eof
MyFile.WriteLine"<item>"
MyFile.WriteLine"<Id>"&rs("title")&"</Id>"
MyFile.WriteLine"<name>"&rs("name")&"</name>"
MyFile.WriteLine"<client>"&rs("client")&"</client>"
MyFile.WriteLine"<url>"&rs("url")&"</url>"
MyFile.WriteLine"<markUp1 href=""#"">"&rs("markUp1")&"</markUp1>"
MyFile.WriteLine"<markUp2 href=""#"">"&rs("markUp2")&"</markUp2>"
MyFile.WriteLine"<markUp3 href=""#"">"&rs("markUp3")&"</markUp3>"
MyFile.WriteLine"<markUp4 href=""#"">"&rs("markUp4")&"</markUp4>"
MyFile.WriteLine"<image>"&rs("image")&"</image>"
MyFile.WriteLine"<imgAlt>"&rs("imgAlt")&"</imgAlt>"
MyFile.WriteLine"<content>"&rs("content")&"</content>"
MyFile.WriteLine"<className>"&rs("className")&"</className>"
MyFile.WriteLine("</item>")

rs.movenext
loop

MyFile.WriteLine("</config>")

MyFile.Close

rs.close
conn.close
set rs=nothing
set conn=nothing
end if
%>

<!--网页显示部分 并显示XML文件的链接-->
<p> </p>
<script language="javascript">
<!--

function ConfirmDel()
{
   if(confirm("确定要更新XML数据吗? 一旦更新将不能恢复!"))
     return true;
   else
     return false;�
}

-->
</script>
<form name="zongmu" method="post" action="?action=zongmu_shengcheng"><input type="submit" name="Submit" value="更新XML数据为最新" onClick="return ConfirmDel();"></form>
<p> </p>
<p><a href="test.xml">查看XML文件内容</a></p>

本人这是第一次花钱买空间买域名建立自己的小窝,中间走了太多弯路,现在拿出来和各位分享一下。

起初是在百度上搜索了很多虚拟服务器和域名的信息,最后锁定了红网(www.red.cc)的空间,但是由于我自己的一时疏忽,导致了在买空间的时候,买成了国内空间(杯具,当我登录到控制面板时,看到上海服务器时,我满脸黑线啊……),这意味着我如果想绑定我自己买的一级域名就需要去备那个狗屁案。

思考良久,决定再找一个便宜的美国空间,于是乎,在花了280大洋后,又出了100大洋去购买了一个美国空间,可杯具又发生了,空间实际情况和注册的时候是有区别的,简单的说就是我被骗了,这个空间不提供MySql数据库空间,除非自己另外购买(继续黑线)。心想:要不就把博客建设在国内空间里,然后在美国的那个空间里放一个index.html文件,里面用一个