分享14个有用的.htaccess代码段和技巧

标签: 分享 htaccess 代码段 | 发表时间:2013-01-09 15:04 | 作者:花香常漫
出处:http://www.cnblogs.com/

htaccess的是一个文件,每一个网络管理员应该知道和了解。,它控制着访问到您的网站目录。但仍然有很多,你应该知道的的,在这篇文章中的片段会告诉你。如何来做才能更好的让网站性能发挥到最佳

1。控制对文件和目录的访问

密码保护是一回事,但有时你可能需要完全阻止用户访问一个特定的文件或目录的选项。这通常发生在系统文件夹,如 包括文件夹,应用程序需要访问,但没有用户会以往任何时候都需要的特权。

要做到这一点,粘贴此代码到 的。htaccess文件,并把它的目录中:

deny from all

 

然而,这将阻止访问到每个人,包括你自己。授予自己访问,你需要指定您的IP地址。下面是代码:

order deny,allow

deny from all

allow from xxx.xxx.xxx.xxx

 

xxx.xxx.xxx.xxx是你的IP。如果您要更换的最后三位数字,例如 0/12,这将指定范围的IP地址在同一网络内,从而节省您的麻烦,分别列出所有允许的IP地址。

如果你想阻止用户访问一个特定的文件,包括. htaccess文件本身,请使用下面的代码片段:

<Files .htaccess>

order allow,deny

deny from all

</Files>

 

同样,如果您要允许给定的IP地址, 允许从列出。

如果你想阻止访问特定的文件类型,用它来代替:

<FilesMatch ".(htaccess|htpasswd|ini|phps|fla|psd|log|sh)$">

Order Allow,Deny

Deny from all

</FilesMatch>

 

2。禁用目录浏览

防止目录浏览,

Options All -Indexes

 

但是,如果由于某种原因,你要启用目录浏览,更改为以下内容:

Options All +Indexes

 

3。高速化的加载时间,压缩文件

你可以压缩任何类型的文件,不仅图像。例如,要压缩 HTML文件,使用这样:

AddOutputFilterByType DEFLATE text/html

 

要压缩 文本文件,使用这样的:

AddOutputFilterByType DEFLATE text/plain

 

您也可以压缩 的Javascript,或压缩多个文件类型使用一个命令:

AddOutputFilterByType DEFLATE application/javascript

AddOutputFilterByType DEFLATE application/rss+xml

 

另外,如果你想你的JavaScript,HTML和CSS文件GZIP压缩,可以使用:

<IfModule mod_gzip.c>

mod_gzip_on Yes

mod_gzip_dechunk Yes

mod_gzip_item_include file \.(html?|txt|css|js|php|pl)$

mod_gzip_item_include handler ^cgi-script$

mod_gzip_item_include mime ^text\.*

mod_gzip_item_include mime ^application/x-javascript.*

mod_gzip_item_exclude mime ^image\.*

mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.*

</IfModule>

 

4。防止盗链保护您的网站

如果你不希望你的图片盗链,使用下面的代码:

RewriteEngine on

RewriteCond %{HTTP_REFERER} !^$

RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?yourdomain.com [NC]

RewriteRule \.(jpg|jpeg|png|gif)$ - [NC,F,L]

 

上面替换yourdomain.com为你自己网站。

5。阻断来自特定域的访问者

如果你有你不欢迎来自特定域的用户,你可以禁止他们。例如,如果您的网站被列在一个地方,你不想要的流量(即成人网站,黑帽网站等),你可以为一个403 Forbidden。您需要启用 mod_rewrite的,

<IfModule mod_rewrite.c>

RewriteEngine on

RewriteCond %{HTTP_REFERER} bannedurl1.com [NC,OR]

RewriteCond %{HTTP_REFERER} bannedurl2.com [NC,OR]

RewriteRule .* - [F]

</ifModule>

 

您需要更换 bannedurl1.combannedurl2.com等 你想加入黑名单的域名。您可能要使用 [NC]标志,因为它指定了您输入的域名不区分大小写。 [F]标志指定要采取的行动-在这种情况下,显示403 Forbidden错误。如果你想禁止多个站点,请使用 [NC,OR]标志为每一个域名,但最后,如果你想禁止单个域中使用 [NC]标志。

6。从特定的用户代理阻断请求

如果你的日志文件显示特定的用户代理(机器人或蜘蛛),你可以添加几行字在. htaccess文件,并拒绝他们的访问到您的网站:

RewriteEngine On
RewriteBase /
SetEnvIfNoCase Referer "^$" bad_user
SetEnvIfNoCase User-Agent "^badbot1" bad_user
SetEnvIfNoCase User-Agent "^badbot2" bad_user
SetEnvIfNoCase User-Agent "^badbot3" bad_user
Deny from env=bad_user

 

 

更换 badbot1badbot1,从日志文件中的机器人的名字。

7。缓存文件

另一种方式是通过文件缓存到您的网站的加载时间加快。下面是你需要添加以缓存文件:

<FilesMatch ".(flv|gif|jpg|jpeg|png|ico|swf|js|css|pdf)$">

Header set Cache-Control "max-age=2592000"

</FilesMatch>

 

您可以添加更多的文件类型(或删除其中的一些),您还可以使用 的max-age指定的时间量,

8。禁用缓存为特定的文件类型

如果你不想缓存特定的文件类型,很容易不包括缓存中的序列。但是,有时文件可能会缓存,即使你没有明确列出他们,在这种情况下,您可能需要禁用缓存,只保留适合自己的,大多数情况下,你需要禁用缓存的动态文件,如脚本。

<FilesMatch ".(pl|php|cgi|spl|scgi|fcgi)$">

Header unset Cache-Control

</FilesMatch>

 

 

9。绕过下载对话框

默认情况下,当您尝试从Web服务器下载文件时,你会得到一个对话,询问您是否要保存文件或打开。这种对话是尤其是在大的媒体文件或PDF文件。如果你已经上传到服务器的文件进行下载,您可以节省用户的时间和进行直接下载。以下是你所需要的 。htaccess文件中设置:

AddType application/octet-stream .pdf

AddType application/octet-stream .zip

AddType application/octet-stream .mp3

 

10。重命名 的.htaccess文件

如果由于某种原因,主要是与安全相关的,你要重命名 的。htaccess文件,这是很容易做到这一点。

AccessFileName htac.cess

 

您还需要更新. htaccess文件中的任何项目文件本身或被提及的地方,否则,你会得到很多的错误。

11。更改默认的索引页

如果你想你的索引页是从默认 的index.htmlindex.php文件INDEX.HTM等不同的东西,这是很容易做到的。

DirectoryIndex mypage.html

 

 

12。重定向到一个安全的HTTPS连接

如果您使用的是HTTPS,您希望将用户重定向到您的网站的安全网页,使用这样的:

RewriteEngine On
RewriteCond %{HTTPS} !on
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}

 

13。限制在PHP文件上传限制,最大尺寸的POST数据,最大脚本执行时间,等

htaccess文件允许你设置一些值,直接影响到你的PHP应用程序。例如,如果你想要强加在PHP上传限制,:

php_value upload_max_filesize 15M

 

您也可以在PHP上传后的最大尺寸为限制,

php_value post_max_size 10M

 

如果你不想脚本执行永远,你可以限制以下的执行时间:

php_value max_execution_time 240

 

最后,如果你想限制的脚本解析输入数据的时间,使用这样的:

php_value max_input_time 180

 

适合你在几秒钟内设置任何值。

14。伪装的文件类型

有时你不希望用户在您的网站上知道的文件类型的文件。。例如,您可以使您的所有文件,看起来好像他们是HTML或PHP文件:

ForceType application/x-httpd-php
ForceType application/x-httpd-php

 

 

本文链接

相关 [分享 htaccess 代码段] 推荐:

分享14个有用的.htaccess代码段和技巧

- - 博客园_首页
htaccess的是一个文件,每一个网络管理员应该知道和了解. 但仍然有很多,你应该知道的的,在这篇文章中的片段会告诉你. 如何来做才能更好的让网站性能发挥到最佳. 密码保护是一回事,但有时你可能需要完全阻止用户访问一个特定的文件或目录的选项. 这通常发生在系统文件夹,如 包括文件夹,应用程序需要访问,但没有用户会以往任何时候都需要的特权.

【外刊IT评论】Htaccess文件用法集锦

- flogliu - 外刊IT评论
有些时候,当你在PHP里使用date或mktime函数时,由于时区的不同,它会显示出一些很奇怪的信息. 你可以在这里找到所有支持的时区的清单. 搜索引擎友好的301永久转向方法. 因为现在很多现代的搜索引擎都有能根据检查301永久转向来更新它现有的记录的功能. 通常,当你下载东西的时候,你会看到一个对话框询问你是保持这个文件还是直接打开它.

通过.htaccess对手机与PC终端分流呈现页面

- - 傻子-王跸西的blog-WangBiXi.com
对于使用手机终端访问PC版页面的,跳转到手机版网页. 对于PC终端访问手机版页面的,跳转到PC版网页. .htaccess文件中内容:. #上面的例子就是如果访问终端为Iphone,则跳转到http://www.yoursite.com/monile/这个页面. #.htaccess对所在文件夹下的页面文件及其子目录下的页面文件皆有效.

50个必备的实用jQuery代码段

- Zhaojing - HTML5研究小组
本文会给你们展示50个jquery代码片段,这些代码能够给你的javascript项目提供帮助. 其中的一些代码段是从jQuery1.4.2才开始支持的做法,另一些则是真正有用的函数或方法,他们能够帮助你又快又好地把事情完成. 如果你发现你任何可以做得更好的地方的话,欢迎把你的版本粘贴在评论中!. 如何修改jQuery默认编码(例如默认UTF-8改成改GB2312):.

50个jQuery代码段帮你成为更出色的JS开发者

- - 博客 - 伯乐在线
本文会给你们展示50个jquery代码片段,这些代码能够给你的javascript项目提供帮助. 其中的一些代码段是从jQuery1.4.2才开始支持的做法,另一些则是真正有用的函数或方法,他们能够帮助你又快又好地把事情完成. 这些都是我尽量记住的有着最佳性能的代码段,因此如果你发现你任何可以做得更好的地方的话,欢迎把你的版本粘贴在评论中.

Dabblet,简洁实用的HTML和CSS代码段在线测试工具

- - 36氪
跨浏览器兼容,对前端攻城师们来说是一个不得不处理的问题. 为了在浏览器间呈现统一的显示效果,攻城师们不仅要为每个游览器添加CSS前缀,甚至还需要用到一些特殊的CSS Hack技巧. 于是, jsFiddle、 JSBin等前端代码的在线测试工具应运而生. 然而,使用jsFiddle仍有很多 不便之处.

分享图片

- 糖果 - 变态辣椒的时政漫画

40套MiniIcon分享

- Newton - Booto&#39;Blog
很精美的40套迷你MiniIcon,可能这类型的Icon更多的是运用在App设计和移动客户端上面吧,简约而不简单.

[Web] 連結分享

- yasy - 網站製作學習誌
关于做PHP扩展开发的一些资源. 我对PHP5.4的一个改进. schema-database – 查詢結果與 PDO::FETCH_CLASS. 讓AJAX動態內容支援瀏覽器回上頁功能. LESS介紹及其與Sass的差異. 網頁設計該用哪種字級單位:px、em或rem. IE10将增强对HTML5和CSS3的支持.