对于一个不懂程序的SEOER来做,更改代码方面是一件非常苦难的事情,当我们遇到301转向以及404页面的制作问题时,经常会困恼我们,这里我提供一个htaccess在线生成工具,这里有404页面链接生成、301转向生成以及htaccess常规设置问题,下面来说一下具体的说明以及使用方法。

htaccess是什么文件

htaccess文件是Apache服务器中的一个配置文件,它负责相关目录下的网页配置。通过htaccess文件,可以帮我们实现:网页301重定向、自定义404错误页面、改变文件扩展名、允许/阻止特定的用户或者目录的访问、禁止目录列表、配置默认文档等功能。

一般来说,htaccess文件需要放在网站的根目录下才能控制整个站点,并且在Linux系统中,需要把其权限设置为644以提高安全性。国内很多主机提供商都通过一定技术手段禁用了该文件,但是国外大多数空间商都是支持该文件的,可以极大的扩展虚拟主机的功能

.htaccess文件中的配置指令作用于.htaccess文件所在的目录及其所有子目录,但是很重要的、需要注意的是,其上级目录也可能会有.htaccess文件,而指令是按查找顺序依次生效的,所以一个特定目录下的.htaccess文件中的指令可能会覆盖其上级目录中的.htaccess文件中的指令,即子目录中的指令会覆盖父目录或者主配置文件中的指令。

在实际应用中,用户最常用其重定向功能与伪静态功能,比如把一个PHP的动态页面定义成一个HTML后缀的静态页面URL形式,这种形式在用户端完全无法看出来,因此,伪静态也是SEO的一种重要手段。常见的程序比如PHPwind、DedeCMS、Wordpress等都支持自动伪静态。

本文件应该由UTF-8编码,或者不添加BOM的Windows编码也可以。因此,不能使用Windows系统自带的记事本程序来编写Htaccess文件,常见的Notepad2等软件可以用来编写该文件。

如果手头没有编辑工具或者不方便下载,可以通过本站的“.htaccess制作生成编辑器”来自动处理这个文件。我们已经完全修正了这套程序中原来存在的很多错误,并且增加了很多使用的功能(比如直接下载),您可以放心使用。但由于服务器系统的不确定性,我们强烈建议您在上传之前,将原来的文件备份。本站不可能因使用这套程序造成的损失承担任何责任。

通过htaccess实现301重定向

在很多情况下,网站都需要进行301或302重定向,其中一个为永久重定向,一个为临时重定向。比如网站整个更换了域名,比如网站结构或目录发生了移动,比如需要将某个域名上的文件迁移到另外的域上等等。

有时候这种重定向对SEO或者PR值的传递是非常有效的。一般我们有几种途径制作一个htaccess文件,比如自己手动编辑,好处是非常灵活、功能强大,但坏处是很容易出错,我们强烈建议用本站的工具自动生成这个文件;另一种途径是通过空间里的控制面板进行自动编辑,这种方法比较死板,但不会因为人为原因出错,除非设置错了。

比如CPanel控制面板中,在Domain>Redirects里面,直接选择相应的选项即可。下面我们来详细讨论一下如何手动编辑这个htaccess文件:

务必注意:在编辑之前请备份原来的htaccess文件,以免造成损失。

1、出于SEO考虑,将kuphp.net重定向至www.kuphp.net。本站就使用了这种重定向的方法避免页面权重分散。

一旦选择了带WWW的为主域名,今后就不要随意更改,方法如下:

RewriteEngine On RewriteCond %{HTTP_HOST} !^www.kuphp.net$ [NC]

RewriteRule ^(.*)$ http://www.ssffx.com/$1 [L,R=301]

上面这一句话是从反面来写的:如果域名不是带WWW的,就统一301跳转到带WWW的域名中去

2、如果需要将域名从www.kuphp.net跳转到kuphp.net,则可以使用一下代码:

RewriteEngine On RewriteCond %{HTTP_HOST} !^kuphp.net$ [NC]

RewriteRule ^(.*)$ http://ssffx.com/$1 [L,R=301]

3、如果需要变更域名,即将老域名换成全新的域名,但是网页内容与结构不变,则可以使用以下代码来实现:

RewriteEngine On

RewriteBase / RewriteCond %{HTTP_HOST} !ssffx.com$ [NC]

RewriteRule ^(.*)$ http://ssffx.com/$1 [L,R=301]

如果是带WWW的域名间跳转,则以此类推,在域名前加上WWW即可。

一般来说,以上这些是网站建设过程中非常常用的几行代码。这些代码对Google非常适用,Google很快就会按照你的意愿将收录的网址改变过来,并且如果换了域名,还能保留以前域名的PR值。

htaccess 404错误页面的自定义

估计所有类型的页面里,404错误页面是见得最多的一个页面了,冷不防出现个冰冷的404,用户体验非常差,也会给SEO带来不好的影响。一个好的404错误页面不仅可以引导用户至正确的页面,也会给人一种赏心悦目的感觉。另外,也可以通过301重定向来更好的解决该页无法找到的问题。

如果网站建立不久,就出现了什么改版、换程序等等,会在搜索引擎中产生大量的无效页面,如果不及时处理,很可能使你的站在搜索引擎中降低地位。众所周知,在Windows IIS里面,可以直接通过管理工具自定义错误文档,但这在Apache下如何实现呢?如果你用的是虚拟主机,无法自己定义,又该如何实现呢?

这个问题难不倒万能的htaccess,通过htaccess定义404错误可谓是小菜一碟,并且其它的错误类别也可以依葫芦画瓢。

一般来说,有两种方法可以自己定义404错误页面,一种是通过空间控制面板,这种方法简单易行;另一种是自己建立htaccess文件,写入定义:

ErrorDocument 404 http://www.ssffx.com/404.html

该行代码即定义404错误为404.html这个页面。其中404为错误代码,后面的网址为出现错误时需要返回的页面。我们非常建议使用完整地址,这样会减少出错的几率。另外,还有很多常用的其它错误代码也可以自己定义,如:

400 - Bad request 错误的请求

401 - Authorization Required 需要认证

403 - Forbidden directory 禁止访问

404 - Page not found 无法找到该页

500 - Internal Server Error 内部服务器错误

按照以上的格式添加进去即可。如果按照以上方法出现错误,可能是文件保存编码的问题。因此,我们建议您使用我们的工具来替您全自动完成这项工作,或者使用notepad2来编写该htaccess文件。

htaccess 伪静态的规则

利用htaccess文件可以很好的进行站点伪静态,并且形成的目标地址与真正的静态页面几乎一模一样,如abc.html等,伪静态可以非常好的结合SEO来提高站点的排名,并且也能给人一种稳定的印象。

由于伪静态必须要完全根据不同的站点进行不同的设置,因此,我们仅能简单介绍其原理,给出几个常用程序的示例:

若要通过htaccess使用伪静态,则必须空间商支持Rewrite模块,该模块负责URL的重写。否则即便是设置好了,也无法使用,并且还有可能出现500错误。

下面是Discuz的伪静态设置文本:

# 将 RewriteEngine 模式打开

RewriteEngine On

# Rewrite 系统规则请勿修改

RewriteRule ^archiver/((fid|tid)-[0-9]+\.html)$ archiver/index.php?$1

RewriteRule ^forum-([0-9]+)-([0-9]+)\.html$ forumdisplay.php?fid=$1&page=$2

RewriteRule ^thread-([0-9]+)-([0-9]+)-([0-9]+)\.html$ viewthread.php?tid=$1&extra=page\%3D$3&page=$2

RewriteRule ^space-(username|uid)-(.+)\.html$ space.php?$1=$2

RewriteRule ^tag-(.+)\.html$ tag.php?name=$1

以下是Phpwind的伪静态设置文本:

RewriteEngine On RewriteBase / RewriteRule ^(.*)-htm-(.*)$ $1.php?$2

RewriteRule ^(.*)simple/([a-z0-9\_]+\.html)$ $1/simple/index.php?$2

此外,还有很多种不同的规则,如果想制定出适用于自己站点的伪静态规则,必须熟悉网站结构和正则表达式。

htaccess在线生成工具用法大全 (转)的更多相关文章

  1. 漂亮的CSS按钮样式集以及在线生成工具

    以前我们制作一样带带阴影.圆角或3D感的按钮都需要用图片来制作,但CSS3出来后就可以不用图片了,由于是代码写的按钮样式,在Retina上浏览依然清晰美观.虽然不错,但我们写一个阴影+质感的按钮还是挺 ...

  2. canvas-js贝塞尔曲线代码在线生成工具

    详细内容请点击 canvas贝塞尔曲线代码在线生成工具 可以快速生成二次.三次贝塞尔曲线的源码生成器,方便经常使用到canvas画图的同学使用,可以直接预览效果随意画出自己想要的图像. 生成源码效果预 ...

  3. canvas-js贝塞尔曲代码在线生成工具

    canvas贝塞尔曲代码在线生成工具 可以快速生成二次.三次贝塞尔曲线的源码生成器,方便经常使用到canvas画图的同学使用,可以直接预览效果随意画出自己想要的图像. 生成源码效果预览: canvas ...

  4. CSS3 Maker提供了10个最为常用的CSS3属性在线生成工具

    CSS3 Maker提供了10个最为常用的CSS3属性在线生成工具,比如说border-radius.gradient.transfrom.animation.transition.rgba.text ...

  5. FilterFactory是一款将图片转换成SVG的在线生成工具。

    FilterFactory是一款将图片转换成SVG的在线生成工具. FilterFactory 彩蛋爆料直击现场 FilterFactory是一款将图片转换成SVG的在线生成工具.

  6. excel制作折线图太麻烦?试试这些折线图在线生成工具

    折线图是以折线的上升或下降来表示统计数量的增减变化的统计图,叫作折线统计图.用折线的起伏表示数据的增减变化情况,不仅可以表示数量的多少,而且可以反映数据的增减变化情况.并且折线图也是目前最方便的一种统 ...

  7. model 在线生成工具

    记录一个在线的model生成工具 快捷开发  so easy http://modelend.com

  8. 两款CSS3样式可视化在线生成工具

    CSS3随着浏览器的升级已经被越来越广泛的运用,合理的运用CSS3可以使你的网站更加美观,并且之前只能用js才能实现的效果也已经可以直接用 CSS3来实现.但是虽然如此,很多浏览器对CSS3的支持还都 ...

  9. android findVIewById()在线生成工具

    今天突然发现一个好工具,能够依据你输入的XML布局文件,自己主动生成findViewById的代码.还支持android annotation的注解方式.真是太棒了.由于我正是使用androidann ...

随机推荐

  1. 记一次UE4源码编译和游戏项目打包过程

    1.首先我们需要注册一个Epic账户,网址如下 http://api.unrealengine.com/CHN/GettingStarted/Installation/index.html#bookm ...

  2. 分布式计算框架-Spark(spark环境搭建、生态环境、运行架构)

    Spark涉及的几个概念:RDD:Resilient Distributed Dataset(弹性分布数据集).DAG:Direct Acyclic Graph(有向无环图).SparkContext ...

  3. ADF 第二篇:使用UI创建ADF

    用户可以通过UI来创建ADF,在UI中创建ADF时,用户不需要下载单独的IDE,而仅仅通过 Microsoft Edge 或者 Google Chrome浏览器.用户登录Azure Portal,选择 ...

  4. if-then-else、loop控制语句在SIMD指令下的后端指令生成实现--笔记

    作者:Yaong 出处:https://www.cnblogs.com/yaongtime/p/14111134.html 版权:本文版权归作者和博客园共有 转载:欢迎转载,但未经作者同意,必须保留此 ...

  5. CC-BY-NC-SA (创作共用许可协议)

    创作共用许可协议 (英语:Creative Commons license,简称CC许可) 是一种公共版权许可协议,其允许分发受版权保护的作品. 一个创作共用许可,用于一个作者想给他人分享.使用.甚至 ...

  6. STL——容器(Set & multiset)编译器提供的16种构造(挖个坑)

    Set & multiset 在vs2019编译器中提供了16种构造方法 1.默认的无参构造 2.比较容器内容,key_comp()函数返回一个比较key的函数. 3.使用迭代器的区间拷贝,拷 ...

  7. Redis存储对象(序列化和反序列化)

    代码以及实例: package com.hp.test; import redis.clients.jedis.Jedis; import java.io.*; public class Test3 ...

  8. 实验:非GTID 一主多从变级联架构

  9. oracle ADG启动顺序

    一.oracle ADG启动顺序 1.启动主备库监听 [oracle@dgdb1 ~]$ lsnrctl start [oracle@dgdb2 ~]$ lsnrctl start   2.启动备库 ...

  10. C# 9.0中引入的新特性init和record的使用思考

    写在前面 .NET 5.0已经发布,C# 9.0也为我们带来了许多新特性,其中最让我印象深刻的就是init和record type,很多文章已经把这两个新特性讨论的差不多了,本文不再详细讨论,而是通过 ...