url动态追加参数_URL静态化

一、URL为什么要静态化

所谓静态URL,就是指不带有“?”、“=”“&”“php”'asp'等字符的URL。换句话说,不带有任何参数的URL,就是静态URL。而静态URL之外的就是动态URL,也就是带有参数的URL。

目前,大多数网站都是数据库驱动的,网页是由程序实时生成的,而不是在服务器上有一个静态的HTML文件。当用户访问一个网址时,程序根据URL中的参数调用数据库数据,并实时生成页面内容。因此,动态页面对应的URL的原始状态也是动态的,包括问号、等号和参数。

更麻烦的是,有时有些参数可以是任意值,服务器可以正常返回页面,尽管内容都相同或非常相似。例如,如果URL中的参数1234更改为5678或其他数字,服务器可能也会返回200状态代码。

所以,在以前,搜索引擎要想把动态URL完全包含在站点页面中,站长就需要将动态URL转换为静态URL。

8c8b43a0fa9e8b3f605dff8e97e12757.png
图片源自网络

二、怎样静态化URL

最常见的方法是使用服务器的URL重写模块,在LAMP (Linux十Apache MySQL PHP)服务器上一般使用mod_rewrite模块,Windows服务器也有功能相似的ISAPI Rewrite等模块。

以LAMP服务器为例,要想把URL :

http://www.xxxxx.com/products.php?id=123

静态化URL为:

http://www.xxxxx.com/products/ 123.html

需要启用服务器mod_rewrite模块,然后在.htaccess文件中写入如下代码:
RewriteRule /products/([0-9] ) /products.php?id=$1

URL重写代码基于正则表达式,每个网站的动态URL结构不同,服务器设置也可能不同,代码也就不同。正则表达式的写法比较复杂,千变万化,通常需要程序员编写。在写URL静态化代码时必须非常小心,错了一个字符,多了一个斜杠等微小的不同,都可能造成灾难性的后果。

严格地说,这里提到的URL静态化应该称为“伪静态”,即服务器上没有相应的HTML文件,页面在用户访问时仍然是动态生成的,但是URL重写技术使URL看起来是静态的。有些CMS系统可以是真正静态的。当站长添加文章或产品后,系统会自动生成真正的静态HTML文件。对于搜索引擎来说,真静态和伪静态没有区别。

以上就是《URL静态化》的全部内容,感谢阅读,希望对你有帮助!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值