.htaccess是什么?.htaccess几个简单应用

.htaccess是什么?

.htaccess叫分布式配置文件,它提供了针对目录改变配置的方法——在一个特定的文档目录中放置一个包含一个或多个指令的文件, 以作用于此目录及其所有子目录。并且子目录中的指令会覆盖更高级目录或者主服务器配置文件中的指令。一般来说,如果你的虚拟主机使用的是Unix或Linux系统,或者任何版本的Apache网络服务器,从理论上讲都是支持.htaccess的。

如何建立.htaccess?

在我们使用的windows(瘟到死)主机上创建.htaccess文件是很困难的。写文件倒很容易,你只需要在文字编缉器(例如:记事本)里写下适当的代码。困难的是文件的保存,因为.htaccess是一个古怪的文件名,其实它并没有文件名,只有一个由8个字母(htaccess)组成的扩展名,而在windows系统中这是无法接受的文件名。因此,这里有3个方法可以实现。

方法一:保存文件的时候将文档保存成名为“.htaccess” (包括引号)或者htaccess.txt亦或者1.htaccess。再将其上传到服务器上,之后直接使用FTP软件来重命名。

方法二:保存文件的时候选择文件—>另存为,保存类型选所有文件,然后文件名输入.htaccess ,这样就OK啦o(∩_∩)o…。

方法三:直接在你的Unix或Linux虚拟主机上建立。

 .htaccess是什么?.htaccess是在Apache HTTP Server这款服务器架设软件下的一个对于系统目录进行各种权限规则设置的一个文件,存在于Linux操作系统中。比较常见的是定义默认首页名称,404页面,301转向,等等,还有更多的功能比如伪静态,限制图片外链,限制下载,密码保护,去除页面广告等等,还有非常多的功能就不一一列举。   其实这些功能大多可以在cPanel控制面板来进行设置的(相当于是.htaccess的图形化界面)。但对于高手来讲,cPanel对于htaccess提供的功能还是太少了点,手工编辑才是王道。相对于国内的虚拟主机,绝大多数是没有这个功能的 目录规则 一般我们将.htaccess文件放置在网站的根目录,控制所在目录及所有子目录,而如果放置在子目录中,会受上级目录中.htaccess文件影响,是不起任何作用的。

举几个例子,以下部分引用维基百科。

自定义错误页面(直接拷贝即可)

ErrorDocument 404 /error-pages/not-found.html ErrorDocument 503 /error-pages/service-unavailable.html

————————————————————————- IP禁止

Order allow,deny Deny from 123.45.67.8 Deny from 123.123.7 Allow from all

上面能禁止IP地址在123.45.67.8以及IP地址开头为123.123.7的任何人。例如123.123.74.42 就不能得到访问。 ————————————————————————- 变更默认首页

DirectoryIndex homepage.html

————————————————————————- 去除页面广告(不一定适用所有免费空间)

LayoutIgnoreURI *.php LayoutIgnoreURI *.cgi LayoutIgnoreURI *.htm LayoutIgnoreURI *.html LayoutIgnoreURI *.txt

————————————————————————- 页面跳转

Redirect page1.html page2.html

如果某人访问 http://www.example.com/page1.html,他将被跳转到(带有HTTP状态代码302)的http://www.example.com/page2.html ————————————————————————- 服务器内置SSI

AddType text/html .shtml AddHandler server-parsed .shtml Options Indexes FollowSymLinks Includes

————————————————————————- 防止图片热链 后面的 .htaccess规则使用了mod rewrite。 特别域名

RewriteEngine on RewriteCond %{HTTP_REFERER} ^http://([^/]+\.)?baddomain1\.com [NC,OR] RewriteCond %{HTTP_REFERER} ^http://([^/]+\.)?baddomain2\.com [NC,OR] RewriteCond %{HTTP_REFERER} ^http://([^/]+\.)?baddomain3\.com [NC] RewriteRule \.(gif|jpg)$ http://www.example.com/hotlink.gif [R,L]

非特别域名

RewriteEngine on RewriteCond %{HTTP_REFERER} !^$ RewriteCond %{HTTP_REFERER} !^http://(www\.)?example.com/.*$ [NC] RewriteRule \.(gif|jpg)$ http://www.example.com/hotlink.gif [R,L]

除非 example.com有这个图片,浏览器才能看到hotlink.gif. 注意:Hotlink热链保护使用 .htaccess 依赖客户端在http GET请求中发送正确的”提交”值。像尝试使用Windows Media Player发送空白的提交到.htaccess 来保护电影档案是无效的。

禁止.htaccess文件被查看 在.htaccess文件中加入如下代码就可以禁止别人访问你的.htaccess文件:

<Files .htaccess> order allow,deny deny from all </Files>

这个网上的大部分版本都有错误,大部分版本丢掉了<Files .htaccess> ,结果导致所有文件都被禁止访问。如果用了错误的规则,所有内容都将无法访问。

同样道理,如果要禁止其他文件的访问,用其他文件名替换就可以了。

时间: 2024-10-28 18:54:58

.htaccess是什么?.htaccess几个简单应用的相关文章

16个简单实用的.htaccess技巧

.htaccess 文件 (Hypertext Access file) 是Apache Web服务器的一个非常强大的配置文件,对于这个文件,Apache有一堆参数可以让你配置出几乎随心所欲的功能..htaccess 配置文件坚持了Unix的一个文化——使用一个ASCII 的纯文本文件来配置你的网站的访问策略. 这篇文章包括了16个非常有用的小技巧.另外,因为.htaccess 是一个相当强大的配置文件,所以,一个轻微的语法错误会造成你整个网站的故障,所以,在你修改或是替换原有的文件时,一定要备

Apache中.htaccess文件的作用和配置

00x01 What's .htaccess      htaccess文件是Apache服务器中的一个配置文件,它负责相关目录下的网页配置.通过htaccess文件,可以帮我们实现:网页301重定向.自定义404错误页面.改变文件扩展名.允许/阻止特定的用户或者目录的访问.禁止目录列表.配置默认文档等功能. 一般来说,htaccess文件需要放在网站的根目录下才能控制整个站点,并且在Linux系统中,需要把其权限设置为644以提高安全性.国内很多主机提供商都通过一定技术手段禁用了该文件,但是国

Apache伪静态(Rewrite).htaccess文件详解

Htaccess(超文本访问)是一个简单的配置文件,它允许设计师,开发者和程序员通过它来改变Apache Web服务器的配置.这些功能包括用户重定向.URL重写(url rewrite,国内很多称为伪静态).目录密码保护.现在我们开始-- 1 建立并上传一个.htaccess文件建立一个.htaccess文件很简单,我们使用一个类似windows的记事本或者notpad++都可以,然后把"自动换行"功能关闭,然后写入一些字后保存文件.比如,我们可以起名为:htaccess.txt上传到

apache .htaccess文件详解和配置技巧总结

一..htaccess的基本作用 .htaccess是一个纯文本文件,它里面存放着Apache服务器配置相关的指令.       .htaccess主要的作用有:URL重写.自定义错误页面.MIME类型配置以及访问权限控制等.主要体现在伪静态的应用.图片防盗链.自定义404错误页面.阻止/允许特定IP/IP段.目录浏览与主页.禁止访问指定文件类型.文件密码保护等.       .htaccess的用途范围主要针对当前目录. 二.启用.htaccess的配置启用.htaccess,需要修改http

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

今天看到一个哥们的帖子发了个rewrite的帖子,以前也写过一个,配置挺简单的,但当时没注意这个问题,当时没有用到.htaccess文件,在机子上测试了一下,发现确实没法用,于是开始找问题的所在. 自己从头搭建了一下: 1.  首先确定您使用的 Apache 版本,及是否加载了 mod_Rewrite 模块. 简单方法 echo phpinfo();  看apache的mod里有没有rewrite 如果有跳过此步 Apache 1.x 的用户请检查 conf/httpd.conf 中是否存在如下

Apacheserver自己定义404页面的两种方法以及.htaccess的重要命令总结

Apacheserver自己定义404错误页面有两种方法: 第一种方法最简单,直接在Apache的httpd.conf下进行配置改动命令,改动的内容请參看.htaccess命令写法中的自己定义错误页面 另外一种方法能够在.htaccess文件里配置命令,详细操作请參看.htaccess命令写法中的自己定义错误页面 .htaccess用法总结 1 . 首先让的本地APACHEserver器同意.htaccess改动 打开httpd.conf (1) Options FollowSymLinks A

Apache服务器自定义404页面的两种方法以及.htaccess的重要命令总结

Apache服务器自定义404错误页面有两种方法: 第一种方法最简单,直接在Apache的httpd.conf下进行配置修改命令,修改的内容请参看.htaccess命令写法中的自定义错误页面 第二种方法可以在.htaccess文件中配置命令,具体操作请参看.htaccess命令写法中的自定义错误页面 .htaccess使用方法总结 1 . 首先让的本地APACHE服务器器允许.htaccess修改 打开httpd.conf (1) Options FollowSymLinks AllowOver

.htaccess 详解

.htaccess文件(或者"分布式配置文件")提供了针对目录改变配置的方法, 即,在一个特定的文档目录中放置一个包含一个或多个指令的文件, 以作用于此目录及其所有子目录.作为用户,所能使用的命令受到限制.管理员可以通过Apache的AllowOverride指令来设置. 概述来说,htaccess文件是Apache服务器中的一个配置文件,它负责相关目录下的网页配置.通过htaccess文件,可以帮我们实现:网页301重定向.自定义404错误页面.改变文件扩展名.允许/阻止特定的用户或

Apache 中 .htaccess 文件设置技巧16则

.htaccess 文件 (Hypertext Access file) 是Apache Web服务器的一个非常强大的配置文件,对于这个文件,Apache有一堆参数可以让你配置出几乎随心所欲的功能..htaccess 配置文件坚持了Unix的一个文化——使用一个ASCII 的纯文本文件来配置你的网站的访问策略.这篇文章包括了16个非常有用的小技巧.另外,因为.htaccess 是一个相当强大的配置文件,所以,一个轻微的语法错误会造成你整个网站的故障,所以,在你修改或是替换原有的文件时,一定要备份

.htaccess简介

一..htaccess是什么 .htaccess文件(或者"分布式配置文件")提供了针对目录改变配置的方法, 即在一个特定的文档目录中放置包含一个或多个指令的.htaccess文件, 以作用于此目录及其所有子目录.作为用户,所能使用的命令受到限制.管理员可以通过Apache的AllowOverride指令来设置. 概述来说,htaccess文件是Apache服务器中的一个配置文件,它负责相关目录下的网页配置.通过htaccess文件,可以帮我们实现:网页301重定向.自定义404错误页