.htaccess是Apache HTTP Server系统级别的配置文件,通常用来实现主机本身以外的一些功能的,比如说重定向、Gzip、以及访问限制等等…………

1、重定向(301跳转)

相信这个功能,大家都不陌生,为了集中网站域名的权重,通常会将不带www的域名301跳转到带www的域名上,比如说域名16see.com就会自动的跳转到www.16see.com上来,这样做的好处就是,搜索引擎会集中不带www的域名的页面权重到带www的网址页面上来,如果没有做301重定向,且带www和不带www的域名都能访问同一个网站,那么在搜索引擎优化方面将起到分散权重的弊端!具体操作:(将域名替换为自己的粘贴到.htaccess文件内即可)

RewriteEngine On
RewriteCond %{HTTP_HOST} !^16see.com$ [NC]
RewriteRule ^(.*)$ http://www.16see.com/$1 [L,R=301]

2、防盗链功能

确实,.htaccess文件可以开启防盗链的功能,什么叫防盗链?防盗链就是节省网站的流量,将网站内的文件、图片等都仅能在自己的网站域名上显示,避免其他网站调用自己网站文件而流失大量的流量,对于很多小站长来说,主机都是有流量限制的 。具体操作:

RewriteEngine On
RewriteCond %{HTTP_REFERER} !^http://(.+\.)?16see\.com/ [NC]
RewriteCond %{HTTP_REFERER} !^$ # wordpress主题下载站提醒:/notlink.png为盗链显示的图片,建议使用小尺寸的,以免因为图片太大,二次浪费! RewriteRule .*\.(jpe?g|gif|bmp|png)$ /notlink.png [L]

3、将wordpress的feed源进行301重定向

说到这功能,老实说小编还是很陌生的,原因是小编就没用过feed的功能,当然如果大家在使用wordpress自带的feed源的话,这里就跳过吧,因为这个功能是为了那些不是使用wordpress自带的feed源的朋友能够协助站长规范化feed源的,具体操作:

RedirectMatch  /feed/(atom|rdf|rss|rss2)/?$ http://feeds.16see.com/wordpress-admin/  

RedirectMatch  /comments/feed/(atom|rdf|rss|rss2)/?$ http://feeds.16see.com/wordpress-admin/  

4、主机错误页面的定义

这个功能相对于大家使用虚拟主机的话,可能都已经有相关设置了,但如果是自己搭建环境的话,相信还是需要用到的,具体操作:

ErrorDocument  /errors/badrequest.html
ErrorDocument /errors/authreqd.html
ErrorDocument /errors/forbid.html
ErrorDocument /errors/notfound.html
ErrorDocument /errors/serverr.html

5、指定类型的文件的打开方式

好吧,又一个陌生的功能来了,这个功能主要表现在于个别站点的音乐(mp3)文件,图片(jpg、png、gif)文件等文件必须通过下载方式得到,对于下载站来说,这样的指令是很需要的,具体操作:(自已添加文件扩展名即可)

ForceType application/octet-stream
Header set Content-Disposition attachment

6、php错误运行的记录生成

又一个陌生的功能来了,意思就是生成主机空间运行php所产生错误的记录,对于技术宅或者查询被黑记录是十分需要的,想象下,在密密麻麻的记录中,寻找着一些蛛丝马迹,是否很牛B的样子,呵呵。具体操作:

# 启用不向用户显示错误
php_flag display_startup_errors off
php_flag display_errors off
php_flag html_errors off
# 记录日志到文件
php_flag log_errors on
php_value error_log /location/to/php_error.log

7、网址中的文件扩展名的设定

从名称看不出具体的含义吧,其实很简单,这个功能可以移除网址中 文件的扩展名 例如.php .asp .html 通过.htaccess文件来实现起来是比较简单和安全的,也是比较有效率的,当然这也是比较极端的做法,技术宅的爱好,但搜索引擎不爱好,搜索引擎更爱静态文件,比如.html 所以需要谨慎使用!具体操作:

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.html -f
RewriteRule ^(.*)$ $.html
# html可以被替换成为asp、php等

8、未配置的apache为自动列出文件目录

我们经常会看到一些网站打开后是文件目录?其实他们是未配置的apache环境产生的,那么这很不安全,下面的代码能够轻松解决:

Options -Indexes  

9、网站页面压缩,也叫静态资源压缩(Gzip)

加快页面打开速度的有效方法就是页面静态压缩,简称gizp,当然静态化的方面有很多,这里说下普遍页面的压缩,即静态资源压缩(Gzip),操作方法很简单:

AddOutputFilterByType DEFLATE text/html text/css text/plain text/xml application/x-httpd-php application/x-javascript  

10、纠正代码的编码

很多朋友在写完一段代码上传到服务器后,经常出现了乱码的情况,而下面这个步骤,将解决因为代码编码而乱码的问题:

<FilesMatch "\.(htm|html|css|js)$">
AddDefaultCharset UTF-

.htaccess文件的妙用的更多相关文章

  1. .htaccess文件的作用(访问控制)

    在线工具: http://www.htaccesseditor.com/sc.shtml 说到.htaccess文件,我想对于wordpress新手或者老手都应该不是很熟悉,也没有多少这方面的概念吧, ...

  2. 用.htaccess文件实现URL重写

    注:第一部分来自 http://www.cnblogs.com/wangkongming/archive/2012/11/13/2768251.html     这位博主的个人网站简洁   还有诗歌  ...

  3. 在linux 服务器上用.htaccess文件实现二级域名访问子目录

    实现子域名绑定网站子目录的方法有很多,比如可以用js跳转,可以用php实现,可以301跳转等,但最常用的应该是RewriteEngine方式了.   新建一个笔记本命名为.htaccess(在wind ...

  4. iis6上使用.htaccess文件,ISAPI_Rewrite的安装及使用

    在Apache上很有用的.htaccess文件在IIS上就没有,要想实现类似的跳转功能可以使用ISAPI_Rewrite来代替,这是一个专门为IIS设置的工具,目的就是代替.htaccess实现很多功 ...

  5. ThinkPHP 利用.htaccess文件的 Rewrite 规则隐藏URL中的 index.php

    1.首先修改Apache的httpd.conf文件. 确认httpd.conf配置文件中加载了mod_rewrite.so 模块,加载的方法是去掉mod_rewrite.so前面的注释#号 讲http ...

  6. apache配置rewrite及.htaccess文件(转载)

    今天看到一个哥们的帖子发了个rewrite的帖子,以前也写过一个,配置挺简单的,但当时没注意这个问题,当时没有用到.htaccess文件,在机子上测试了一下,发现确实没法用,于是开始找问题的所在. 自 ...

  7. htaccess文件还可以被用来把访问网站的流量劫持到黑客的网站

    看是否有文件上传操作(POST方法), IPREMOVED--[01/Mar/2013:06:16:48-0600]"POST/uploads/monthly_10_2012/view.ph ...

  8. 禁止浏览.htaccess文件

    很多黑客会攻击和利用.htaccess做网站跳转,所以保护好.htaccess文件尤为重要. 在apache的httpd.conf的配置文件中 默认是已经设置了禁止对.htaccess的访问,截取相关 ...

  9. 在.htaccess文件中写RewriteRule无效的问题的解决

    近来在Apache Rewrite 拟静态配置时,遇到个问题.写的如下: RewriteEngine onRewriteRule ^/t_(.*)/$ /test.php?id=$1 保存在httpd ...

随机推荐

  1. Ubuntu1404+Django1.9+Apache2.4部署配置2配置文件设置

    转载注明出处,个人博客:http://www.cnblogs.com/wdfwolf3/ Django首要的部署平台是WSGI,它是Python Web服务器和应用的标准.使用Apache和mod_w ...

  2. Windows下面对环境变量的操作

    如何在cmd命令行中查看.修改.删除与添加环境变量:首先明确一点:所有的在cmd命令行下对环境变量的修改只对当前窗口有效,不是永久性的修改.也就是说当关闭此cmd命令行窗口后,将不再起作用.永久性修改 ...

  3. Docker安装Gitlab

    一.Ubuntu16.4上Docker安装Gitlab 1.安装docker 参见:https://docs.docker.com/engine/installation/linux/ubuntuli ...

  4. Warning: Invalid argument supplied for foreach()

    经常对提交过来的数据进行双重循环,但是为空时会报错:Warning: Invalid argument supplied for foreach() 如下解决即可:foreach($data[$i]  ...

  5. 越狱开发:用iosOpenDev配置越狱开发环境 编写第一个hello world-b

    上网搜索越狱环境搭建,查到iosOpenDev软件,是个很方便的编写插件,而且可以直接用Xcode创建的工具,便开始着手学习如何去安装 集合了网上的方法后,我安装的时候发现: 1.作者最后更新的时间是 ...

  6. MongoDB update数据语法【转】

    在前面的文章“mongodb 查询的语法”里,我介绍了Mongodb的常用查询语法,Mongodb的update操作也有点复杂,我结合自己的使用经验,在这里介绍一下,给用mongodb的朋友看看,也方 ...

  7. iOS版 hello,world版本2

    // // main.m // Hello // // Created by lishujun on 14-8-28. // Copyright (c) 2014年 lishujun. All rig ...

  8. (转载)Convolutional Neural Networks卷积神经网络

    Convolutional Neural Networks卷积神经网络 Contents 一:前导 Back Propagation反向传播算法 网络结构 学习算法 二:Convolutional N ...

  9. Hibernate中的一对一关系详解(1)

    A:先讲讲一对一的关系(欲知其他关系,请看下篇) a:主键关联的一对一关系 一对一关系一般用主键关联,也就是说用主键值来维护两者的关系,一个表的主键存放另一个表的主键值.例如在员工与帐号中,我们取员工 ...

  10. Illustrator软件中eps和ai格式的区别

    转自Illustrator软件中eps和ai格式的区别 AI是ILL特有的格式,EPS格式是在排版领域经常使用的格式.AI中的位图图像是用链接的方式存储,EPS格式则将位图图像包含于文件中.对于含有相 ...