用.htaccess文件优化网站
1.什么是.htaccess文件:
概述来说,htaccess文件是Apache服务器中的一个配置文件,它负责相关目录下的网页配置。通过htaccess文件,可以帮我们实现:网页301重定向、自定义404错误页面、改变文件扩展名、允许/阻止特定的用户或者目录的访问、禁止目录列表、配置默认文档等功能。
2.如何使用:
在apache服务器根目录新建一个文件,重命名为.htaccess,再把相关的代码写入这个文件。
3.优化网站的.htaccess代码:
- 启用Gzip压缩
AddOutputFilterByType DEFLATE text/plain text/html text/xml text/css application/xml application/xhtml+xml application/rss+xml application/javascript application/x-javascript image/gif image/jpg image/png
- 防止图片外链
RewriteEngine on RewriteCond %{HTTP_REFERER} !^$ RewriteCond %{HTTP_REFERER} !^http://(www.)?baidu.com(/)?.*$ [NC] RewriteCond %{HTTP_REFERER} !^http://(www.)?google.com(/)?.*$ [NC] RewriteCond %{HTTP_REFERER} !^http://(www.)?mogublog.net(/)?.*$ [NC] RewriteRule .*.(gif|jpg|jpeg|bmp|png)$ - [F]
- 修改上传文件大小限制
php_value upload_max_filesize 20M php_value post_max_size 20M
- 取消虚拟主机自动嵌入的代码
php_value auto_append_file none
- 强制下载文件,而不是在浏览器上打开
<FilesMatch ".(mov|mp3|jpg|pdf)$"> ForceType application/octet-stream Header set Content-Disposition attachment </FilesMatch>
- 网址结尾加/
<IfModule mod_rewrite.c> RewriteCond %{REQUEST_URI} /+[^.]+$ RewriteRule ^(.+[^/])$ %{REQUEST_URI}/ [R=301,L] </IfModule>
- 自定义404错误页
ErrorDocument 404 /404.html
- 禁止某个ip的访问
order deny, allow deny from all allow from xx.xx.xx.xx