📅  最后修改于: 2023-12-03 14:38:46.444000             🧑  作者: Mango
.htaccess
文件是一种Apache服务器配置文件,通常用于指定网站的特定配置和规则,如重定向、认证、缓存控制等。
.htaccess
文件常用于以下场景:
.htaccess
文件通常位于网站根目录或子目录中。当访问该目录或子目录下任意文件时,Apache会自动加载.htaccess
文件中指定的配置规则。
.htaccess
文件的配置语法基于Apache模块指令和指令参数,如下所示:
<指令名 [参数1 参数2 ...]>
指令内容
</指令名>
以下是一些.htaccess
配置的示例代码,供参考。
# 301永久重定向
Redirect 301 /old-page.html http://example.com/new-page.html
# 模式匹配重定向
RewriteEngine On
RewriteRule ^old-url$ http://example.com/new-url [R=301,L]
# 重定向错误页面
ErrorDocument 404 /not-found.html
# 开启基本认证
AuthType Basic
AuthName "Restricted Area"
AuthUserFile /path/to/.htpasswd
Require valid-user
# 开启Digest认证
AuthType Digest
AuthName "Restricted Area"
AuthDigestFile /path/to/.htdigest
Require valid-user
# IP白名单
Order Allow,Deny
Allow from 192.168.0.1
Deny from all
# 开启gzip压缩
<IfModule mod_deflate.c>
SetOutputFilter DEFLATE
AddOutputFilterByType DEFLATE text/html text/plain text/xml
</IfModule>
# 开启Expires缓存
<IfModule mod_expires.c>
ExpiresActive On
ExpiresDefault "access plus 1 month"
</IfModule>
# 添加MIME类型
AddType application/vnd.ms-fontobject .eot
AddType font/ttf .ttf
AddType font/otf .otf
AddType application/font-woff .woff
# 移除MIME类型
RemoveType application/x-gzip .gz
# 禁止目录列出
Options -Indexes
# 禁止访问敏感文件
<FilesMatch "^\.ht">
Require all denied
</FilesMatch>
# 修改默认页面
DirectoryIndex index.html index.php
# 定义自定义错误页面
ErrorDocument 400 /errors/400.html
ErrorDocument 401 /errors/401.html
ErrorDocument 403 /errors/403.html
ErrorDocument 404 /errors/404.html
ErrorDocument 500 /errors/500.html
# Robots.txt文件
User-agent: *
Disallow: /
# 限制指定IP
Order Deny,Allow
Deny from 192.168.0.1
Allow from all
# 限制IP段
Order Deny,Allow
Deny from 192.168.0.0/24
Allow from all
以上是一些.htaccess
的常见使用示例,开发人员可以根据具体场景使用.htaccess
配置文件,以满足项目的不同需求。