热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

本blog的url重写

一,为什么要url重写对于搜索引擎而言,在主观上对静态页面和动态页面并没有特殊的好恶,只是很多动态页面的参数机制不利于搜索引擎收录,而静态页面更容易收录而已。此外,页面静态化在一定

一,为什么要url重写

对于搜索引擎而言,在主观上对静态页面和动态页面并没有特殊的好恶,只是很多动态页面的参数机制不利于搜索引擎收录,而静态页面更容易收录而已。此外,页 面静态化在一定程度上也提高了页面访问速度和系统性能及稳定性—-这使得在搜索引擎优化上面,为使得效果更加明显,问题简单快速解决,大家对站点的静态化非常的看重。

URL应当是用户友好的;
URL应当是可读的;
URL应当是可预测的;
URL应当是统一的;
URL面向搜索引擎是友好的;


二,URL设计规则:

1.动态网址静态化——面向搜索引擎友好。动态URL中不超过两个动态参数,不包含区段标识符;
2.频道或栏目名称采用英文或全拼形式,推荐采用中文全拼;全拼形式过长采用英文。涉及多个词使用连字符“-”,而不采用下划线“_”;
3.简短(short)的URI,避免不必要的冗长(一个URI的长度最好不要超过80个字节/W3C);
4.一律采用小写字母,不采用大写形式;
5.不采用纸介质打印后难以辨认的字符;
6.简单;
7.能够反映站点结构;
8.管理员可以重新组织服务器上的文件系统结构,而无需改动Url;
9.URI不暴露服务器端使用的脚本语言,平台引擎;
10.使用标准的Session机制,而不是把Session ID放在URI中;
11.删除的URL资源,采用HTTP410重定向;URL变更采用http301重定向;
12.目录结构最好用一级到二级。不要超过三级,实现URL简短,合理使用URL资源;
13.频道、栏目首页命名:栏目的全拼或英文.html;
14.全站内到统一页面的URL形式需要保持统一;
15.全站单个页面url保持唯一,杜绝url拼写和语义上的错误;

三,本blog的url重写

1,nginx下面的url重写

rewrite /tag/(.*) /blog/index.php?tag=$1 last;
rewrite /(.*)/(\d+)\.html /blog/index.php?p=$2 last;
rewrite /category/(.*) /blog/index.php?category_name=$1 last;

#rewrite /date/([0-9]{4,4})/([0-9]{1,2})?$ /blog/index.php?year=$1&mOnthnum=$2&page=$3 last;
rewrite “/date/([0-9]{4,4})/([0-9]{1,2})$” /blog/index.php?m=$1$2 last;

rewrite /newpage(\d+)$  /blog/index.php?page_id=$1 last;
rewrite /feed$  /blog/index.php?feed=rss2 last;
rewrite /comment/feed$  /blog/index.php?feed=comment-rss2 last;

2,apache下面的url重写

RewriteRule /tag/(.*) /blog/index.php?tag=$1 [L]
RewriteRule /(.*)/(\d+).html /blog/index.php?p=$2 [L]
RewriteRule /category/(.*) /blog/index.php?category_name=$1 [L]
RewriteRule /date/([0-9]{4})([0-9]{1,2})([0-9]{1,2})/([^/]+)/?([0-9]+)?/?$ /blog/index\.php\?year=$1&mOnthnum=$2&day=$3&name=$4&page=$5 $
RewriteRule /date/([0-9]{4})/([0-9]{1,2})/([0-9]{1,2})/?$ /blog/index\.php\?year=$1&mOnthnum=$2&day=$3&page=$4 [L]
RewriteRule /date/([0-9]{4})/([0-9]{1,2})/?$ /blog/index\.php\?year=$1&mOnthnum=$2&page=$3 [L]

blog的前端页面,暂时只发现了这几种url,分页的东西,还没有加,数据没有那么多。哈哈。

四,URL 例子

下面就让我们来看看使用上述最佳做法的URL例子:

普通: http://www.domain.com/Shopping/Categories/Apparel_Clothing/

较好: http://www.domain.com/shopping/clothing.html

最佳:http://www.domain.com/clothing/

糟糕:http://www.domain.com/?cat=3423&pid=45345345&sessID=325646VGHD36523746&ref=56756



推荐阅读
  • 用阿里云的免费 SSL 证书让网站从 HTTP 换成 HTTPS
    HTTP协议是不加密传输数据的,也就是用户跟你的网站之间传递数据有可能在途中被截获,破解传递的真实内容,所以使用不加密的HTTP的网站是不 ... [详细]
  • DVWA学习笔记系列:深入理解CSRF攻击机制
    DVWA学习笔记系列:深入理解CSRF攻击机制 ... [详细]
  • 该大学网站采用PHP和MySQL技术,在校内可免费访问某些外部收费资料数据库。为了方便学生校外访问,建议通过学校账号登录实现免费访问。具体方案可包括利用学校服务器作为代理,结合身份验证机制,确保合法用户在校外也能享受免费资源。 ... [详细]
  • 数字图书馆近期展出了一批精选的Linux经典著作,这些书籍虽然部分较为陈旧,但依然具有重要的参考价值。如需转载相关内容,请务必注明来源:小文论坛(http://www.xiaowenbbs.com)。 ... [详细]
  • 探讨Redis的最佳应用场景
    本文将深入探讨Redis在不同场景下的最佳应用,包括其优势和适用范围。 ... [详细]
  • 解决Bootstrap DataTable Ajax请求重复问题
    在最近的一个项目中,我们使用了JQuery DataTable进行数据展示,虽然使用起来非常方便,但在测试过程中发现了一个问题:当查询条件改变时,有时查询结果的数据不正确。通过FireBug调试发现,点击搜索按钮时,会发送两次Ajax请求,一次是原条件的请求,一次是新条件的请求。 ... [详细]
  • 开机自启动的几种方式
    0x01快速自启动目录快速启动目录自启动方式源于Windows中的一个目录,这个目录一般叫启动或者Startup。位于该目录下的PE文件会在开机后进行自启动 ... [详细]
  • 您的数据库配置是否安全?DBSAT工具助您一臂之力!
    本文探讨了Oracle提供的免费工具DBSAT,该工具能够有效协助用户检测和优化数据库配置的安全性。通过全面的分析和报告,DBSAT帮助用户识别潜在的安全漏洞,并提供针对性的改进建议,确保数据库系统的稳定性和安全性。 ... [详细]
  • 本指南详细介绍了如何利用华为云对象存储服务构建视频点播(VoD)平台。通过结合开源技术如Ceph、WordPress、PHP和Nginx,用户可以高效地实现数据存储、内容管理和网站搭建。主要内容涵盖华为云对象存储系统的配置步骤、性能优化及安全设置,为开发者提供全面的技术支持。 ... [详细]
  • 基于Net Core 3.0与Web API的前后端分离开发:Vue.js在前端的应用
    本文介绍了如何使用Net Core 3.0和Web API进行前后端分离开发,并重点探讨了Vue.js在前端的应用。后端采用MySQL数据库和EF Core框架进行数据操作,开发环境为Windows 10和Visual Studio 2019,MySQL服务器版本为8.0.16。文章详细描述了API项目的创建过程、启动步骤以及必要的插件安装,为开发者提供了一套完整的开发指南。 ... [详细]
  • 在优化Nginx与PHP的高效配置过程中,许多教程提供的配置方法存在诸多问题或不良实践。本文将深入探讨这些常见错误,并详细介绍如何正确配置Nginx和PHP,以实现更高的性能和稳定性。我们将从Nginx配置文件的基本指令入手,逐步解析每个关键参数的最优设置,帮助读者理解其背后的原理和实际应用效果。 ... [详细]
  • 在Ubuntu系统中安装Android SDK的详细步骤及解决“Failed to fetch URL https://dlssl.google.com/”错误的方法
    在Ubuntu 11.10 x64系统中安装Android SDK的详细步骤,包括配置环境变量和解决“Failed to fetch URL https://dlssl.google.com/”错误的方法。本文详细介绍了如何在该系统上顺利安装并配置Android SDK,确保开发环境的稳定性和高效性。此外,还提供了解决网络连接问题的实用技巧,帮助用户克服常见的安装障碍。 ... [详细]
  • window下的python安装插件,Go语言社区,Golang程序员人脉社 ... [详细]
  • javascript分页类支持页码格式
    前端时间因为项目需要,要对一个产品下所有的附属图片进行分页显示,没考虑ajax一张张请求,所以干脆一次性全部把图片out,然 ... [详细]
  • 深入解析Struts、Spring与Hibernate三大框架的面试要点与技巧 ... [详细]
author-avatar
蚁走天涯路
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有