解读.htaccess重写规则:分析未知.htaccess文件功能
聊聊.htaccess文件的那些作用
嘿,兄弟,刚好我对.htaccess这块门儿清,给你唠唠它到底是干啥的!
.htaccess是Apache(以及LiteSpeed这类兼容服务器)特有的分布式配置文件,最大的好处就是不用去改服务器的主配置文件,就能在网站的单个目录级别设置各种规则,灵活性拉满。下面是它最常用的几个功能:
URL重写(最受欢迎的功能)
能把难看的动态URL(比如example.com/post?id=123)改成干净易记的静态风格(example.com/post/123),对SEO和用户体验都友好。靠mod_rewrite模块实现,典型代码长这样:RewriteEngine On RewriteRule ^post/(\d+)$ post.php?id=$1 [L]自定义错误页面
再也不用让用户看服务器默认的丑404、500页面了!你可以自己做个有意思的错误页,然后用.htaccess指定:ErrorDocument 404 /404.html ErrorDocument 500 /500.html访问控制
要么限制特定IP才能访问某个目录,要么给目录加密码锁:- 允许指定IP访问:
Order Deny,Allow Deny from all Allow from 192.168.1.100 - 密码保护(得配合
.htpasswd文件一起用):AuthType Basic AuthName "Restricted Area" AuthUserFile /path/to/.htpasswd Require valid-user
- 允许指定IP访问:
缓存控制提速
告诉浏览器缓存图片、CSS、JS这些不常变的文件,减少重复请求,网站加载速度蹭蹭涨:<FilesMatch "\.(jpg|jpeg|png|gif|css|js)$"> Header set Cache-Control "max-age=31536000, public" </FilesMatch>设置默认首页
用户访问网站目录时,服务器会自动加载你指定的首页文件,比如:DirectoryIndex index.html index.php意思是先找
index.html,找不到再找index.php。修复MIME类型问题
有些少见的文件类型(比如.webp图片)服务器可能识别不了,手动加个规则就能解决:AddType image/webp .webp
最后提个醒:只有Apache系的服务器认.htaccess,Nginx这类服务器用的是别的配置文件,语法也不一样。而且子目录的.htaccess规则会覆盖父目录的,这点要注意哦!
内容的提问来源于stack exchange,提问作者vickysan007rv
相关产品推荐
相关产品推荐

