apache中.htaccess文件设置详解

发布时间:2020-08-21编辑:脚本学堂
有关apache服务器中htaccess文件的用法,htaccess文件设置教程,在htaccess中开启站点的图片缓存,自定义错误页面,301重定向操作方法。

apache中.htaccess文件设置教程

1、设置php.ini文件属性。
在属性前添加php_value,如:php_value upload_max_filesize 2M

2、是否在没有默认文档的目录显示文件列表
说明:
此项设置默认即可。
如果您选择“显示”,则意味着访问有些没有默认文档的目录时,服务器会返回该目录下的文件列表。
注意,这可能给您的站点带来安全隐患。

显示:
 

复制代码 代码示例:
<Files ~ "^.(htaccess|htpasswd)$">
deny from all
</Files>
Options +Indexes
ErrorDocument 400 4
RewriteEngine on
RewriteCond %{HTTP_HOST} ^(baidu.com)(:80)? [NC]
RewriteRule ^(.*) http://www.baidu.com/$1 [R=301,L]
order deny,allow

默认:
 

复制代码 代码示例:
<Files ~ "^.(htaccess|htpasswd)$">
deny from all
</Files>
ErrorDocument 400 4
RewriteEngine on
RewriteCond %{HTTP_HOST} ^(baidu.com)(:80)? [NC]
RewriteRule ^(.*) http://www.baidu.com/$1 [R=301,L]
order deny,allow

隐藏:
 

复制代码 代码示例:
<Files ~ "^.(htaccess|htpasswd)$">
deny from all
</Files>
Options -Indexes
ErrorDocument 400 4
RewriteEngine on
RewriteCond %{HTTP_HOST} ^(baidu.com)(:80)? [NC]
RewriteRule ^(.*) http://www.baidu.com/$1 [R=301,L]
order deny,allow
 

3、是否开启站点的图片缓存
说明:如果您的站点包含了大量的图片,并且一般不会更改,请尝试开启此项以设置图片缓存。在某些情况下开启此项可以加快页面载入速度,减少服务器流量消耗。(时间最小单位秒)
开启10分钟缓存
 

复制代码 代码示例:
<FilesMatch ".(gif|jpg|jpeg|png|ico)$">
Header set Cache-Control "max-age=600"
</FilesMatch>
 

开启1小时缓存
 

复制代码 代码示例:
<FilesMatch ".(gif|jpg|jpeg|png|ico)$">
Header set Cache-Control "max-age=3600"
</FilesMatch>
 

4、自定义错误页面
 

复制代码 代码示例:
ErrorDocument 400 /400.html
ErrorDocument 401 /401.html
ErrorDocument 402 /402.html
ErrorDocument 403 /404.html
ErrorDocument 505 /505.html
 

5、自定义默认文档
说明:请输入文件名(例:index.html)
 

DirectoryIndex login.html index.html

6、WWW域名重定向
说明:请输入您最终决定使用的网址(比如http://wangqu.org 或者 http://www.wangqu.org,程序将自动判断重定向类型)
 

复制代码 代码示例:
<Files ~ "^.(htaccess|htpasswd)$">
deny from all
</Files>
RewriteEngine on
RewriteCond %{HTTP_HOST} ^(baiduc.com)(:80)? [NC]
RewriteRule ^(.*) http://www.baiduc.com/$1 [R=301,L]
order deny,allow
 

7、网页重定向
说明:
在“原地址”输入网站路径、“目标”内输入网址
 
示例:
原地址:/ 目标:http://www.new.com/
将所有文件(夹)重定向到http://www.new.com/一一对应的页面
原地址:/old.html 目标:http://www.old.com/new.html
将页面old.html内容重定向到http://www.old.com/new.html页面
 
不会使用?参见.htaccess的重定向方法详解进行学习(http://blog.wangqu.org/2010/07/htaccess-301-jump/)。
 
例如:
 

复制代码 代码示例:
<Files ~ "^.(htaccess|htpasswd)$">
deny from all
</Files>
Redirect permanent http://www.new.com/ http://www.old.com/new.html   //301 Moved Permanently 永久重定向
Redirect temp http://www.old.com/new.html http://www.old.com/new1.html //302 Moved Temporarily 临时重定向
order deny,allow
 

8、访问权限控制
如:
 

复制代码 代码示例:
<Files ~ "^.(htaccess|htpasswd)$">
deny from all
</Files>
order deny,allow
allow from 192.168.3.2
deny from 192.168.3.1
 

9、MIME类型自定义
输入您的文件名后缀(不需要加小数点)
如:
 

复制代码 代码示例:
<Files ~ "^.(htaccess|htpasswd)$">
deny from all
</Files>
order deny,allow
AddType img gif
AddType fsa pdf
 

10、MIME类型自定义
说明:
输入 允许链接您图片的域名 与 您希望替换后图片的地址。尤其注意,替换后文件的地址不能是您当前域名内的文件,否则将造成循环。
 
比如:允许访问的域名输入“yoursite.com”、“baidu.com”、“google.com”(不带http://与www,仅输入顶级域名,别忘了添加自己的域名),
 
替换成图片输入完整网址:“http://www.PicServer.com/photo.jpg”
例如:
 

复制代码 代码示例:
<Files ~ "^.(htaccess|htpasswd)$">
deny from all
</Files>
order deny,allow
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www.)?baidu.com(/)?.*$     [NC]
RewriteCond %{HTTP_REFERER} !^http://(www.)?i-meeting.com(/)?.*$     [NC]
RewriteRule .*.(gif|jpg|jpeg|bmp|png)$ http://www.PicServer.com/photo.jpg [R,NC,L]