• 首页
    • On Trip
    • 心情日记
    • 代码人生
    • 前端技术
    • Linux-Server
  • 关于站长
    • 新浪微博
    • 我在人人网
    • About Me
    • My Google
    • My Flickr
  • WordPress
    • Qtranslate Flags Setting
  • 案例
    • MD5 加密
  • Div & Css
  • 分类目录

Linux-Server

Home > Blog > 使用.htaccess自动在url末尾添加斜杠“/”

使用.htaccess自动在url末尾添加斜杠“/”

Time Posted on 15, 六

  一般而言,url在末尾处是不是加上斜杠“/”,对用户访问是没有太大影响的,大多数的Web 服务器均能正确解析:当Web服务器接收到对某个末尾不含斜杠的url请求时,如“http://www.yaoyingying.org/about”,其首先假定在网站根目录下存在一个名为“about”的文件,至于具体的文件格式则取决于web服务器的具体设置,根据设置不同可以是html或其他任何格式如 php,如果当在相应目录下找不到该文件,主流的Web服务器如apache或IIS便自动将其作为目录处理,在上述例子中即在根目录下查找名为 “about”的目录,如果存在这个目录,则向客户端浏览器返回这个目录的默认文档;而对以斜框“/”结尾的url,web服务器则直接将其按目录处理。   这一过程由Web服务器自动处理,用户基本上感觉不到——当然,也不排除在极端情况下web服务器不能正确解析而返回“Page Not Found” 404 错误——正因为此,许多网站在建设中往往忽略网址中的斜杠问题,在撰写url时比较随意,部分url在末尾处加了斜杠而另外部分则未加斜框,等等。应该说,这是个很不好的习惯。   另一方面,即使网站建设者在自己的网站内能够规范地撰写url,即对除针对文件外的网址均在url末尾处加上斜杠,但同样也存在一个问题:别的网站创建的链接未必在末尾处包含斜杠,这同样会带来问题。   因此,理想的解决办法便是让web服务器能够自动为末尾没有斜杠的url添加“/”。 url末尾处加上斜杠“/”能够有效的避免Duplicate Content   从SEO(搜索引擎优化)的角度,网站内出现过多的重复内容(Duplicate Content)是一大忌。简单地说,所谓重复内容(Duplicate Content),是指同样的内容、页面可通过多个不同的url访问,这往往会给搜索引擎收录、排名网页时带来困扰。   很多朋友在进行SEO时一般比较关注域名中含“www”与不含“www”的问题,即类似于 “http://www.yaoyingying.com”、“http://yaoyingying.com”造成的重复内容问题,却容易忽略url末尾的斜框可能带来的重复内容。事实上,这也是极易带来重复内容的主要因素,比如说,虽然在浏览器中,“http://yaoyingying.com/about/”与 “http://yaoyingying.com/about”虽然都链接至我们的“关于”页,但对搜索引擎而言,这是两个完全不同的的网址,这样的两个网址指向同一个页面情况正是标准的Duplicate Content。 在url末尾处加上斜杠“/”能够提高web服务器的效率   从本文开头所介绍的web服务器解析url的机制可以很明显地看出,当url指向目录而末尾没有斜杠“/”时,web服务器需首先进行一个查找有无同名文件的过程,这无疑会加重Web Server的压力,而以斜框结尾的url则可省略这一过程。   当然,web服务器的性能取决于很多因素,仅仅这样做,即在url末尾添加斜杠,对服务器性能的提升影响很小。但如果您的网站访问量相当大,积少成多,带来的好处也是很可观的。 在Apache中自动将末尾没有斜杠的url以301重定向至正确地址   要避免网站在搜索引擎中出现重复内容,最简单的解决办法便是将不同的url以301重定向至一个标准的url上,这样,才能最大限度地挖掘链接的价值,特别是来之不易的外部网站链接。   Apache由于支持mod_rewrite功能,在.htaccess中进行简单设置即可实现这一点,即将没有以斜框“/”结尾的url永久重定向至以“/”结尾的网址。——至于IIS,要实现类似功能,似乎并没有太简单的方式。   下面即为实现这一功能的.htaccess代码: RewriteEngine On RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_URI} !(.*)/$ RewriteRule ^(.*)$ http://yaoyingying.com/$1/ [L,R=301]   说明: * RewriteCond %{REQUEST_FILENAME} !-f : 指定操作仅针对目录,对指向文件的url不进行rewrite操作; * RewriteCond %{REQUEST_URI} !(.*)/$ :判断url是否以斜杠“/”结尾; * [...]

htaccess 的一点用法

Time Posted on 12, 六

LAMP 环境里可以很容易的通过 .HTACCESS 进行一些网站的设置 网站引索: DirectoryIndex index.php index.htm index.html 域名重定向,将yaoyingying.com 重定向到 www.yaoyingying.com RewriteEngine On RewriteCond %{HTTP_HOST} ^yaoyingying\.com$ [NC] RewriteRule ^(.*)$ http://www.yaoyingying.com/$1 [R=301,L] 下面这些对静态页网站的 URL 优化就有很大帮组了,取好每个页面文件的名字,通过 下面的规则进行目录结构式优化。 RewriteRule ^([a-z]+)\/([a-z0-9]+)-([a-z0-9]+)\/$ $1_$2-$3.php [QSA,L] RewriteRule ^([a-z]+)\/([a-z]+)-([a-z]+)\/$ $1_$2-$3.php [QSA,L] RewriteRule ^([a-z]+)\/([a-z]+)-([a-z]+)-([a-z]+)\/$ $1_$2-$3-$4.php [QSA,L] RewriteRule ^([a-z]+)-([a-z]+)\/([a-z]+)\/$ $1-$2_$3.php [QSA,L] RewriteRule ^([a-z]+)-([a-z]+)\/([a-z]+)-([a-z]+)\/$ $1-$2_$3-$4.php [QSA,L] RewriteRule ^([a-z]+)-([a-z]+)\/([a-z]+)-([a-z]+)-([a-z]+)\/$ $1-$2_$3-$4-$5.php [QSA,L]   RewriteRule ^([a-z]+)\/([a-z0-9]+)\/$ $1_$2.php [QSA,L] [...]

Apache 通过 .htaccess 对目录加密

Time Posted on 1, 六

例如有/home/www/website/dir1 目录,需要对/dir1/加密访问,必须输入口令密码才能访问。 在这种情况下,要是/dir1/加密可以通过 .htaccess 和 .htpasswd 的设置来实现 在/home/www/website/dir1下建立.htaccess文件 vi /home/test1/a/.htaccess 文件内容如下 AuthName “===LOGIN===”   #随便填写 AuthType Basic AuthUserFile /home/www/website/dir1/.htpasswd Require valid-user username 保存退出 账号生成口令 htpasswd -c /home/test1/a/.htpasswd username 系统会要求输入两遍该用户的密码。 修改密码也是同样 htpasswd -c /home/test1/a/.htpasswd username

ifconfig 命令详解(转载)

Time Posted on 2, 五

无论是Linux 自动安装还是我们手工安装,Linux 都会向你询问有关网络的问题并配置相关的软件。这个用于配置网卡的基本命令就是ifconfig。 在执行ifconfig 命令后,系统将在内核表中设置必要的参数,这样Linux 就知道如何与网络上的网卡通 信。ifconfig 命令有以下两种格式:

cannot restore segment prot after reloc: Permission denied

Time Posted on 2, 五

在linux上安装有些东西时会出现 Permission denied 的情况:以下就是解决它的办法之一 编辑/etc/selinux/config,找到这段: # This file controls the state of SELinux on the system. # SELINUX= can take one of these three values: # enforcing - SELinux security policy is enforced. # permissive - SELinux prints warnings instead of enforcing. # disabled - SELinux is fully disabled. SELINUX=enforcing

Apache日志分析

Time Posted on 2, 五

1,查看apache进程: ps aux | grep httpd | grep -v grep | wc -l 2,查看80端口的tcp连接: netstat -tan | grep "ESTABLISHED" | grep ":80" | wc -l

Apache的rewrite的设置参数

Time Posted on 2, 五

Apache的rewrite的重写非常常用,现总结了一下. Apache mod_rewrite规则重写的标志一览 R[=code](force redirect) 强制外部重定向 强制在替代字符串加上http://thishost[:thisport]/前缀重定向到外部的URL.如果code不指定,将用缺省的302 HTTP状态码。 F(force URL to be forbidden)禁用URL,返回403HTTP状态码。

让Putty中显示中文的不再乱码

Time Posted on 2, 五

玩Linux的同志,大多数都使用 vmware在自己的机器上装个虚拟的Linux玩,但由于字符界面用的比较多,有时对着资料做实验,总是要按ctrl+atl键来在系统和虚拟机之间来回切换,很是麻烦,有了Putty这个问题就轻松解决了。Putty是个绿色软件,不用安装即可使用,下载下来放到桌面上,用的时候双击就行了。

获取适合自己的 Debian 源

Time Posted on 21, 四

刚刚装完的debian的源文件不太完美,apt-get 的时候很多包都找不到。现在我们可以用 apt-spy,可以自动测试到哪个源的下载速度最快。

Debian "Segmentation Faultsts"

Time Posted on 21, 四

apt-get 的 Segmentation faultsts 问题 当用apt-get去安装或更新软件的时候出现下面的问题: #apt-get install apt-spy Segmentation faultsts... 61%
« Older entries
Newer entries »

给我钱钱~

如果你举得我的文章对你有帮助,欢迎向我支付一小笔金钱作为回报。

数额无大小,这是我的收款主页http://me.alipay.com/yaoyingying

一看就知道是灰机~

凯特葛妮亚~

  • Featured Stories (12)
  • Linux-Server (40)
  • On Trip (21)
  • 代码人生 (77)
    • Drupal (2)
    • Wordpress (5)
  • 前端技术 (27)
    • Jquery (9)
  • 心情日记 (62)
    • Have a Joke (7)
    • 随便写写 (19)
  • 电脑硬件 (7)

最近扯的蛋

  • 让Qtranslate 支持 Custom Taxonomy
  • 去除 wordpress 链接中的域名
  • 清理wordpress菜单里的 id 和 class
  • Drupal7 获取自定义字段的值
  • WordPress 只显示当前用户的文章
  • 怎么让WordPress自定义菜单在新窗口打开
  • 7步在 Drupal 7 中建立 Nivo Slider
  • 探测设备系统
  • 关闭 WordPress 自动更新
  • WordPress Feeds 定制
  • WordPress Upload New Media “HTTP error”
  • PHP数据类型转换
  • WordPress UTF8 中文截取
  • WordPress 如何修改密码保护表单的文字说明
  • Qtranslate With function __() and _e()
  • Ubuntu 163 Sources List
  • wpautop WordPress 文章格式化
  • Get Labels for Advanced Custom Fields
  • Post Formats of WordPress
  • wp_head() 函数优化

坑爹啊~

2012 年二月
日 一 二 三 四 五 六
« 一    
 1234
567891011
12131415161718
19202122232425
26272829  

一堆破图

IMG_7432_副本 IMG_7185_副本 IMG_7363_副本 IMG_7319_副本 IMG_7332_副本 climbing 11071916154d64dd6d2895dbf2 1107191553866bdca3b170ba8e 11071915331d34fb0b6be0ec85

在过去的时光里

  • 2012 年二月 (1)
  • 2012 年一月 (2)
  • 2011 年十二月 (4)
  • 2011 年十一月 (3)
  • 2011 年十月 (4)
  • 2011 年九月 (1)
  • 2011 年八月 (6)
  • 2011 年六月 (2)
  • 2011 年五月 (9)
  • 2011 年四月 (2)
  • 2011 年三月 (2)
  • 2011 年一月 (7)
  • 2010 年十二月 (8)
  • 2010 年十一月 (4)
  • 2010 年十月 (5)
  • 2010 年九月 (4)
  • 2010 年八月 (7)
  • 2010 年七月 (8)
  • 2010 年六月 (2)
  • 2010 年五月 (3)
  • 2010 年四月 (6)
  • 2010 年三月 (7)
  • 2010 年二月 (5)
  • 2010 年一月 (2)
  • 2009 年十二月 (7)
  • 2009 年十一月 (7)
  • 2009 年九月 (10)
  • 2009 年八月 (18)
  • 2009 年七月 (15)
  • 2009 年六月 (17)
  • 2009 年五月 (19)
  • 2009 年四月 (14)
  • 2009 年三月 (25)

像新浪一样SB

一群流氓~

  • Hpyer 的未知空间
  • Just4Memory
  • php教程
  • web蓝草博客
  • 上海收缩机
  • 动漫穷小子网
  • 天时表行
  • 影视爱好者
  • 教育培训网
  • 水平网
  • 盒子UI设计
  • 老姚博客
  • 苏州丁氏养蜂场
  • 赵子仓
  • 那些花儿

一切都是浮“云”

ajax Apache apt-get Chinajoy CSS Debian dedecms error firefox HeidiSQL htaccess html IE6 javascript jQuery lamp linux mail mod_rewrite mysql mysql5 MySQL Front php phplist phpmyadmin postfix thinkphp Ubuntu wordpress WordPress Theme 京腔 代码 年轻的时候很傻很天真 户外 摄影 数据库 李玉刚 歌词 歌词翻译 盛世霓裳 示例 翻译 芳华绝代 视频 音乐

分析在此~

png png
Logo

© 2012 Yao Yingying