怎样判断网页是静态还是伪静态呢

怎样判断网页是静态还是伪静态呢?

SEO文章看多了,经常能听到静态、伪静态这类的词语,那什么样的网页是静态的,什么样的网页是伪静态的呢?
 
IE5浏览器以上:
打开你想判断的网站后,再在网址框中输入javascript:alert(document.lastModified)
IE5以上... ,此方法可以判断一个网页的最后更新时间,如果这个时间与现在的时间相同,说明是伪静态的,反之为静态的。

 
火狐浏览器下:

先用火狐打开一个网页如:http://bbs.ittang.com/forum-13-1.html 等网页完全打开后进入FireFox的控制台。"工具"-“错误控制台”快捷键:shift+ctrl+J  然后在控制台里面输入:alert(document.lastModified); 查看最后修改时间并记录。
 
接下来关闭控制台,重新刷新网页,再用相同的方法在控制台里输入查询代码,再查看文件的最后修改时间,连续几次如果发现时间不同则可以判断它是伪静态的了
 
 
相关知识:关于伪静态和真静态网页用处和利弊对比
 
1.关于伪静态的用处
有些用户觉得,伪静态和真静态实际被收录量会相差很大,其实不然,从你个人角度,你去判断一下一个帖子到底是真静态还是伪静态?
估计很难看得出,因为所谓静态的意思,就是地址中不带问号,不带问号的就是静态,管他是真的还是伪的?搜索引擎看得出吗?
所以说,其实不论是真的还是伪的,其实对于搜索引擎来说都是一样的,搜索引擎没有说,你这个是伪的,我不收录你.
揪 根掘底的来说,为什么搜索引擎会不收录带问号的网址?因为搜索引擎怕由于问号而进入死循环(以前动网就有这样一个漏洞,蜘蛛进去出不来了),所以很多时候 带问号的地址是不会进去的,伪静态对于搜索引擎来说,其实就是静态,因为地址中没有带问号,所以没有真静态比伪静态收录得多的说法.

2.为什么选择伪静态
有很多用户说:
真静态不好吗?
为什么不用真静态?
访问起来不是更快吗?
负载不是更好吗?
等等等等...
在这里,其实只用一个问题来回答:为什么选择MYSQL.
很多用户大概不明白为什么那么多大型论坛都选择了MYSQL数据库作为储存机制,大概大部分都是想:"因为DZ用了MYSQL,所以就是MYSQL".
其实不然,试想DZ为什么会在那么多论坛程序并存的日子生存下来并笑傲江湖,很大原因是因为DZ用了MYSQL.试想如果大C当年改的程序是一个文本论坛,那还会有DZ的今天吗?
或者从另一个角度问,为什么那么多大型网站都选择了MYSQL而不是文本作为储存机制?
所谓文本论坛,实际就跟真静态的说法差不多了,将数据储存在空间上面,大量读写硬盘,等等...
为什么这种写法会被淘汰呢?
我相信答案不会是老师所说的:

"discuz.net 目前有 2129867 篇帖子,存储成html的话大约是 20799 M,也就是 20G左右。这当中还不计算由于磁盘存储机制造成的空间浪费(100个1k 的文件占用的空间可能会是200K)。"

这种说法从我个人观点来看,这个理由不能给予用户不使用真静态充分的理由.
然而,另一个理由却是值得我们注意思考的,也是为什么绝大多数站都不选择生成静态:

"删除、更新这些html内容会导致大量的磁盘io操作以及大量的磁盘碎片."

正如上面这个说法,在实际当中确实会导致大量的磁盘操作,可想而知,会产生大量的磁盘碎片甚至会导致硬盘出现坏道.

所以对于生成静态而言,还不如去用文本论坛,可以更好的解决你们的需求.
(副W就是做文本论坛出生的,当时的名字为ofstar http://www.ofstar.net ,后因发展困难转为MYSQL,而PW生成静态页面也就是PW以前文本方式稍加改进用于吸引用户眼球的噘头)
.

 

当然,也许在读这篇文章的很多朋友都有使用过BT,也听说过BT对硬盘很伤,不能开多,而所谓伤害,和这里指的都是同一样东西,导致磁盘出现碎片甚至出现磁盘坏道.

这里都是说些很实际的例子来说明问题了.

3.关于伪静态的坏处
当然犹如一篇文章的作者所说的

"如果流量稍大一些使用伪静态就出现CPU使用超负荷,我的同时在线300多人就挂了,而不使用伪静态的时候同时在线超500人都不挂,我的ISS数是1000"

确实是这样的,由于伪静态是用正则判断而不是真实地址,分辨到底显示哪个页面的责任也由直接指定转由CPU来判断了,所以CPU占有量的上升,确实是伪静态最大的弊病.

4.我们该如何做?

我们来总结一下.
1.使用真静态和假静态对SEO来说没有什么区别
2.使用真静态可能将导致硬盘损坏并将影响论坛性能
3.使用伪静态将占用一定量的CPU占有率,大量使用将导致CPU超负荷
4.最重要的一点,我们要静态是为了SEO

所以.
1.使用真静态的方法可以直接排除了,因为无论怎么生成,对硬盘来说都是很伤的.
2.既然真伪静态的效果一样,我们就可以选择伪静态了.
3.但是伪静态大量使用会照成CPU超负荷.
4.所以我们只要不大量使用就可以了.
5.既然静态只是给SEO看的,我们只需要伪静态给SEO就行了,不需要给用户使用.

转载于:https://www.cnblogs.com/FineDay/articles/3554534.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/401956.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Exynos4412 Uboot 编译工具 —— 交叉工具链 arm-linux-gcc 的安装

一、什么是交叉编译? 在开发主机运行编译器编译内核、应用程序。内核和程序在目标机上运行,这个编译过程被称为交叉编译。编译器运行在开发主机(通常是X86体系的PC机)上,编译出的的代码是目标机体系结构的,…

Linux学习之CentOS(一)--CentOS6.4环境搭建

一、前言作为一个想从事j2ee后台开发的程序猿,linux系统怎能不学呢?所以,这几天自己准备学习一下linux操作系统。废话不多说,直奔主题。要学linux开发,首先得要安装linux系统吧,这里我在选择之前也挺迷茫&a…

Linux设备驱动入门----globalmem字符设备驱动

1、什么是globalmem虚拟设备 (1)、globalmem字符设备驱动中,分配一片内存大小为GLOBALMEM_SIZE(4K)的空间 (2)、提供对该片内存的读写、控制和定位函数 (3)、用户进程能够通过linux系统调用访问…

百度地图iOS API

http://www.cnblogs.com/wengzilin/p/3444471.html http://blog.csdn.net/iukey/article/details/7343650转载于:https://www.cnblogs.com/nathanou/p/3556347.html

find_cmd函数分析

一、概述 1、函数位置 common/command.c 2、函数功能分析 解析命令的关键环节是如何根据输入命令查找对应命令的信息,从而跳转到对应命令的函数处执行程序。这必然涉及到如何存放命令的详细信息这个问题。因为一种存法,对应一种查法,进…

ARM 指令集 VS Thumb 指令集

Thumb指令集Thumb指令可以看做是ARM指令压缩形式的子集,是针对代码密度【1】的问题而提出的,它具有16为的代码密度。Thumb不是一个完整的体系结构,不能指望处理程序只执行Thumb指令而不支持ARM指令集。因此,Thumb指令只需要支持通…

软件测试 -- alpha测试和beta测试的区别

alpha测试是在用户组织模拟软件系统的运行环境下的一种验收测试,由用户或第三方测试公司进行的测试,模拟各类用户行为对即将面市的软件产品进行测试,试图发现并修改错误。 Beta测试是用户公司组织各方面的典型终端用户在日常工作中实际使用beta版本,并要求用户报告异常情况,…

Linux 驱动头文件说明

#include <linux/***.h> //是在linux-2.6.29/include/linux下面寻找源文件。 #include <asm/***.h> //是在linux-2.6.29/arch/arm/include/asm下面寻找源文件。 #include <mach/***.h> //是在lin…

ACL访问控制

ACL访问控制概述&#xff1a;访问控制&#xff0c;当文件或目录的权限不能在完全满足访问控制的实现时&#xff0c;可以使用acl进行设置访问权限。即&#xff0c;对一个文件或者目录设置个别&#xff08;特殊&#xff09;用户对其有操作的权限ACL访问控制的作用&#xff1a;1&a…

内联函数 —— C 中关键字 inline 用法解析

一、什么是内联函数 在C语言中&#xff0c;如果一些函数被频繁调用&#xff0c;不断地有函数入栈&#xff0c;即函数栈&#xff0c;会造成栈空间或栈内存的大量消耗。 为了解决这个问题&#xff0c;特别的引入了inline修饰符&#xff0c;表示为内联函数。 栈空间就是指放置程式…

eclipse maven scm

http://my.oschina.net/OutOfMemory/blog/178512 1.安装eclipse的maven插件 m2e(http://wiki.eclipse.org/M2E_updatesite_and_gittags)Help->Install New Software...在work with中填入我们需要安装m2e的版本url&#xff1a;http://download.eclipse.org/technology/m2e/…

DS18B20 驱动编写

嵌入式开发平台&#xff1a;mini2440 DS18B20 所用GPIO&#xff1a;S3C2410_GPF(3) 一、DS18B20 时序分析 DS18B20的一线工作协议流程是&#xff1a;初始化→ROM操作指令→存储器操作指令→数据传输&#xff0c;其工作时序包括&#xff1a;初始化时序、写时序、读时序。 1、初…

Android 自定义View实现画背景和前景(ViewGroup篇)

2019独角兽企业重金招聘Python工程师标准>>> 在定义ListView的Selector时候&#xff0c;有个drawSelectorOnTop的属性&#xff0c;如果drawSelectorOnTop为true的话&#xff0c;Selector的效果是画在List Item的上面&#xff08;Selector是盖住了ListView的文字或者…

Linux的mmap内存映射机制解析

在讲述文件映射的概念时,不可避免的要牵涉到虚存(SVR 4的VM).实际上,文件映射是虚存的中心概念, 文件映射一方面给用户提供了一组措施,好似用户将文件映射到自己地址空间的某个部分,使用简单的内存访问指令读写文件&#xff1b;另一方面,它也可以用于内核的基本组织模式,在这种…

svn add Default@2x.png的文件含有@的文件名注意事项

为什么80%的码农都做不了架构师&#xff1f;>>> iOS的Icon里面&#xff0c;包含符号 &#xff0c;svn add Icon2x.png&#xff0c;没法加进去。 解决的办法是&#xff0c;在文件名最后加一个&#xff0c;例如 svn add Icon2x.png 或者svn add Icon\2x.png\ 转载于…

Linux 设备驱动的固件加载

作为一个驱动作者, 你可能发现你面对一个设备必须在它能支持工作前下载固件到它里面. 硬件市场的许多地方的竞争是如此得强烈, 以至于甚至一点用作设备控制固件的 EEPROM 的成本制造商都不愿意花费. 因此固件发布在随硬件一起的一张 CD 上, 并且操作系统负责传送固件到设备自身…

ORM for Net主流框架汇总与效率测试

框架已经被越来越多的人所关注与使用了&#xff0c;今天我们就来研究一下net方面的几个主流ORM框架&#xff0c;以及它们的效率测试&#xff08;可能会有遗漏欢迎大家讨论&#xff09;。 ORM框架&#xff1a;Object/Relation Mapping&#xff08;对象/关系 映射&#xff09;的缩…

Yii基于角色的访问控制(非Rbac)

今天遇到了权限控制的问题&#xff0c;后台不同级别的用户登录后看到的内容是不一样的。网上查了下&#xff0c;说Yii中有自带的RBAC权限控制&#xff0c;大概看了下&#xff0c;没理解太明白。然后就是采用filter进行过滤验证&#xff0c;看着这个还不错。下面简单说下我是我怎…

Linux USB 驱动开发(二)—— USB 驱动几个重要数据结构

前面我们学习了USB 驱动的一个描述符&#xff0c;下面来学习 USB 驱动的几个重要数据结构 一、struct usb_interface 接口函数 [cpp] view plaincopy struct usb_interface { struct usb_host_interface *altsetting; struct usb_host…

比较DataTable中新旧数据

内容不写了&#xff0c;代码上都做了写注释。1 /** <summary> 2 /// 比较两个数据表&#xff0c;并返回比较结果表 3 /// 比较条件&#xff1a; 4 /// 1.两个表结构相同&#xff1b; 5 /// 2.两个表排序都是按主键顺序排序&#xff1b…