本帖主题: .htaccess文件使用教程[转贴]
2007-11-16 02:40 PM No.1 |
发表人:adicom
个人Blog
社区短消息
TOP
|
adicom
Meyu Customer
UID 4694
精华
1
积分 196
帖子 107
体力 102
威望 10
贡献 0
阅读权限 80
注册 2007-3-19
状态 离线
|
[广告]: 新手解疑1:FTP空间各文件目录的作用
PS:全文系转帖
:Xh.p/Z3Zyweb.meyu.net,W/H)}p t*Z2E!B
1.1 什么是.htaccess文件
5^EF
Z8A+{0`梦游时光互联从本指南中,你将可以学习到有关.htaccess文件及其功能的知识,并用以优化你的网站。尽管.htaccess只是一个文件,但它可以更改服务器的设置,允许你做许多不同的事情,最流行的功能是您可以创建自定义的“404 error”页面。.htaccess 并不难于使用,归根结底,它只是在一个text文档中添加几条简单的指令而已。M%R8ds*Y0PP_
5F"ZTe2D首先你要判断主机支持它梦游时光互联2z}.h3yh'O R&z:f
1Y.P9bwtFweb.meyu.net这可能很难用简单的答案来回答。许多主机支持.htaccess,但实际上并不会特别声明,许多其他类型的主机有能力但并不允许他们的用户使用. htaccess。一般来说,如果你的主机使用Unix或Linux系统,或任何版本的Apache网络服务器,从理论上都是支持.htaccess的,尽管你的主机服务商可能不允许你使用它。+r0M,j\9j:fq
d}/P1Dz'XN{1_判断你的主机是否允许.htaccess,一个标志很好的是它是否支持文件夹密码保护。为达到此功能,主机服务商需要使用.htaccess(当然,少数情况下他们虽提供密码保护功能,但却并不允许你使用.htaccess)。如果你不确定自己的主机是否支持.htaccess,最好的办法是上传你自己的.htaccess文件看看是否有用,或者直接发送e-mail向你的主机服务商咨询。梦游时光互联0[-pX/mk%OQj{
6FNag/?YApache系统中的.htaccess文件(或者”分布式配置文件”提供了针对目录改变配置的方法,即,在一个特定的文档目录中放置一个包含一个或多个指令的文件,以作用于此目录及其所有子目录。作为用户,所能使用的命令受到限制。管理员可以通过Apache的AllowOverride指令来设置。)G9U6l9?Xy0H
`0~/lrB E4`web.meyu.net子目录中的指令会覆盖更高级目录或者主服务器配置文件中的指令。
Z'Z;~3uxXo|
]
y,|梦游时光互联
&t%Qt [-H8r0c-U.htaccess必须以ASCII模式上传,最好将其权限设置为644。
1I
M9Ce
E/\7P%G3j
I7~(Q9e? xeE`9y梦游时光互联.htaccess可以做大量的事情,包括:文件夹密码保护、用户自动重定向、自定义错误页面、改变你的文件扩展名、封禁特定IP地址的用户、只允许特定IP地址的用户、禁止目录列表,以及使用其他文件作为index文件。
!Gb(`(d2c/~#~e,N梦游时光互联
V&Q|6e,sY!Ec c9Kv
l7d0Xo!C|,v
1.2 如何创建.httaccess文件 web.meyu.netr7G3X'dv(w4hv
创建.htaccess文件也许会给你带来一些困难。写文件很容易,你只需要在文字编缉器(例如:写字板)里写下适当的代码。真正困难的可能是文件的保存,因为.htaccess是一个古怪的文件名(它事实上没有文件名,只有一个由8个字母组成的扩展名),而在一些系统(如windows 3.1)中无法接受这样的文件名。在大多数的操作系统中,你需要做的是将文档保存成名为:“.htaccess” (包括引号)。如果这也不行,你需要将其先命名为其它名字(例如htaccess.txt),再将其上传到服务器上,之后直接使用FTP软件来重命名。:H5xM)_:|H.j1a)z5B
]5T!lIV8CN
警告
"^
Mbi jP4]CZweb.meyu.netxoKg#\
在使用.htaccess之前,我必须给你一些警告。虽然在服务器上使用.htaccess绝对不太可能给你带来任何麻烦(如果有些东西错了,它只是没效用罢了),但如果你使用Microsoft FrontPage Extensions,就必须特别小心。因为FrontPage Extensions本身使用了.htaccess,因此你不能编辑它并加入你自己的信息。如果确实有这方面的需要(并不推荐,但是可能),你应该先从服务器上下载.htaccess文档(如果存在),之后在前面加上你的代码。梦游时光互联r*c T5m"K9w
%L _#C9Y`*t4JaP梦游时光互联2|.httacces文件的配置 PTf}z:j#H\?
梦游时光互联{
V.g]'m
['S.~7m0yPweb.meyu.net2.1.配置.htaccess 自定义错误页
Qy;Va|#R3`#B \梦游时光互联我要介绍的.htaccess的第一个应用是自定义错误页面,这将使你可以拥有自己的、个性化的错误页面(例如找不到文件时),而不是你的服务商提供的错误页或没有任何页面。这会让你的网站在出错的时候看上去更专业。你还可以利用脚本程序在发生错误的时候通知你(例如我使用Free Webmaster Help的PHP脚本程序,当找不到页面的时候自动e-mail给我)。w!F/Y4a ^K
web.meyu.net2bw-oy!X#S
你所知道的任何页面错误代码(像404找不到页面),都可以通过在.htaccess文件里加入下面的文字将其变成自定义页面:
5E6H |b0]%z9Q.T at8lweb.meyu.net
+wW6|;i`m5M1g梦游时光互联 ErrorDocument errornumber /file.html
pP9PI J)?(C8G?eweb.meyu.netCT0][+ec2s/J
举例来说,如果我的根目录下有一个nofound.html文件,我想使用它作为404 error的页面:
_5L"K|#[$e,AG@Jv\ k/_
ErrorDocument 404 /notfound.htmlweb.meyu.netT_ \d7|B/d
H(wm7@6XV&a
如果文件不在网站的根目录下,你只需要把路径设置为:
:i;U.m9_:o5m3l4Iweb.meyu.net*W3GQ r5[\[
{K
ErrorDocument 500 /errorpages/500.html
V;AL(Y!cI7~
&]9Lc~L"N(p以下是一些最常用的错误:
"u1L(gw|&@8n
W%?%_O6[:V梦游时光互联常用的客户端请求错误返回代码:
cw4} mEQ&l[}梦游时光互联|x-G @t#~"D
400 - Bad request 错误请求
1]OC5N\2e$Q401 Authorization Required需要验证n'b1qc7X
Ea0A;Ap
403 Forbidden禁止Dw:iEo;E
404 Not Found找不到页面
-@UKk.x
J405 Method Not Allowed
!L@j'Mfv"D408 Request Timed Out$M'l _!Xf L}
411 Content Length Required w/rs:XwjT3Q
PM
412 Precondition Failed t~+@&zXa,FWb
413 Request Entity Too Long
;[;wgL&l6hH&~l414 Request URI Too Long
e4m8e&k#BO]415 Unsupported Media Type
Vw^g:by
web.meyu.net6e\gbm g:B W m(D
常见的服务器错误返回代码:
:P%ki2W:rl1B@4?%i8GG(NBh
500 Internal Server Error内部服务器错误
GE$p9ur,z0h&t梦游时光互联/_H"Z{6|#[x}:Z;n
接下来,你要做的只是创建一个错误发生时显示的文件,然后把它们和.htaccess一起上传。
|k7i b2{
eEJDl,`,x7F?r?8Wi
用户可以利用.htaccess指定自己事先制作好的错误提醒页面。一般情况下,人们可以专门设立一个目录,例如errors放置这些页面。然后再.htaccess中,加入如下的指令:
,k6F/x+bj3K [ HC`;tb{Ik@
ErrorDocument 404 /errors/notfound.html
&}b$a4fHu梦游时光互联 ErrorDocument 500 /errors/internalerror.html*|8xtL7U0Y$J'Yi
4{"Y1tz7{7A-VF3m5B
一条指令一行。上述第一条指令的意思是对于404,也就是没有找到所需要的文档的时候得显示页面为/errors目录下的notfound.html页面。不难看出语法格式为:
qh+\9KRO
'U2\!~
t8A ErrorDocument 错误代码 /目录名/文件名.扩展名
uLF1XX%{
;@dCO(e!I9t
如果所需要提示的信息很少的话,不必专门制作页面,直接在指令中使用HTML号了,例如下面这个例子:3t2vi$I;jT;o3S)L~!d@o
| |