.htaccess文件的妙用你知道多少?

2019年12月21日17:22:28 发表评论 热度531 ℃

说到.htaccess文件,我想对于wordpress新手或者老手都应该不是很熟悉,也没有多少这方面的概念吧,至少小编是这样的,而最近看到一篇有关介绍的文章,觉得很不错,所以今天打算分享给大家,也给自己一篇扫盲课吧!

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

那么下面就介绍10个关于.htaccess文件的妙用,看看大家都了解多少

1、重定向(301跳转)

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

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

2、防盗链功能

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

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

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

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

  1. <IfModule mod_alias.c>  
  2. RedirectMatch 301 /feed/(atom|rdf|rss|rss2)/?$ http://feeds.2zzt.com/wordpress-admin/  
  3. RedirectMatch 301 /comments/feed/(atom|rdf|rss|rss2)/?$ http://feeds.2zzt.com/wordpress-admin/  
  4. </IfModule>  

4、主机错误页面的定义

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

  1. ErrorDocument 400 /errors/badrequest.html  
  2. ErrorDocument 401 /errors/authreqd.html  
  3. ErrorDocument 403 /errors/forbid.html  
  4. ErrorDocument 404 /errors/notfound.html  
  5. ErrorDocument 500 /errors/serverr.html  

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

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

  1. <Files *.jpg>  
  2. ForceType application/octet-stream  
  3. Header set Content-Disposition attachment  
  4. </Files>  

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

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

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

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

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

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

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

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

  1. Options -Indexes  

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

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

  1. <ifmodule mod_deflate.c>  
  2. AddOutputFilterByType DEFLATE text/html text/css text/plain text/xml application/x-httpd-php application/x-javascript  
  3. </ifmodule>  

10、纠正代码的编码

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

  1. <FilesMatch "\.(htm|html|css|js)$">  
  2. AddDefaultCharset UTF-8  
  3. </FilesMatch>  

现在对.htaccess文件的妙用是否有了更多的认识了,当然还有很多的功能小编自己也不知道,先写这么多吧,日后再更新,亲手码字,请复制党滚!

瓜皮猪

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: