LAMP(6)静态元素过期时间、配置防盗链、访问控制Directory、访问控制FilesMatch

                              静态元素过期时间

静态元素:(图片、js、css)

平时我们在浏览器访问网站的时候,如果里面有这些静态元素,浏览器会帮我们把它们缓存下来,再次访问的时候访问的速度就会快。

缓存下来的静态元素到底缓存多久?这个是可以在服务器配置文件中定义的。(定义静态元素过期时间)

304 状态码表示该文件已经缓存到用户电脑。

定义静态元素的失效日期:

步骤:(针对111.com这台虚拟主机操作)

1.编辑配置文件,添加配置内容;

增加配置

<IfModule mod_expires.c>   //expires模块m

    ExpiresActive on  //打开该功能的开关

    ExpiresByType image/gif  "access plus 1 days"

    ExpiresByType image/jpeg "access plus 24 hours"

    ExpiresByType image/png "access plus 24 hours"

    ExpiresByType text/css "now plus 2 hour"

    ExpiresByType application/x-javascript "now plus 2 hours"

    ExpiresByType application/javascript "now plus 2 hours"

    ExpiresByType application/x-shockwave-flash "now plus 2 hours"

    ExpiresDefault "now plus 0 min"

</IfModule>


改完了配置文件需要重新加载一下:

/usr/local/apache2.4/bin/apachectl -t  (检测)

/usr/local/apache2.4/bin/apachectl graceful (加载)


2.检查一下expaire模块是否有打开:

/usr/local/apache2.4/bin/apachectl -M |grep expires

(若无则在httpd配置文件中打开)

vim /usr/local/apache2.4/conf/httpd.conf  (搜索expires )

修改后



测试:curl -x192.168.136.133:80   111.com/qq.jpg -I


如果我们把expaire模块关了-->测试




                    配置防盗链

referer的概念:如我们在A网站的一个页面http://a.com.a.html的链接去访问到B网站的一个页面http://b.com/b.html,那么B网站的页面的referer就是http://a.com.a.html。referer其实就是一个网址。


定义防盗链步骤:(对111.com虚拟主机操作)

1.编辑虚拟主机配置文件,增添内容:

配置文件增加如下内容

  <Directory /data/wwwroot/111.com>  //定义目录

        SetEnvIfNoCase Referer "http://111.com" local_ref   //定义白名单

        SetEnvIfNoCase Referer "http://www.example.com" local_ref  //定义白名单

        SetEnvIfNoCase Referer "^$" local_ref //定义白名单,^$为空的referer,当我们直接在浏览器中输入访问内容(图片)的地址时,referer为空。

        <FilesMatch "\.(txt|doc|mp3|zip|rar|jpg|gif|png)"> //针对这些访问设置防盗链。

            Order Allow,Deny

            Allow from env=local_ref    //这两行的意思是把我们上面定义的referer做允许,其他deny

        </FilesMatch>

    </Directory>


改完了配置文件需要重新加载一下:

/usr/local/apache2.4/bin/apachectl -t  (检测)

/usr/local/apache2.4/bin/apachectl graceful (加载)


测试:

1.浏览器:

 (SetEnvIfNoCase Referer "^$" local_ref //定义白名单,^$为空的referer,当我们直接在浏览器中输入访问内容(图片)的地址时,referer为空。)在浏览器测试时是这条内容注释了测试的。


使用curl -e 指定refererc测试


curl -e "http://www.baidu.com/123.txt" -x192.168.136.133:80 111.com/qq.jpg -I


使用有白名单的referer





                              访问控制Directory

限制ip访问,只有白名单(允许名单ip)才能就行访问

步骤:

修改虚拟主机配置:

核心配置文件内容

<Directory /data/wwwroot/111.com/login/>

Order deny,allow   //order定义下面先执行deny还是allow

Deny from all

Allow from 192.168.136.133

</Directory>

(这里限制的是源ip)

改完了配置文件需要重新加载一下:

/usr/local/apache2.4/bin/apachectl -t  (检测)

/usr/local/apache2.4/bin/apachectl graceful (加载)

(此时我们已经创建了login目录和目录里的index.php文件)

测试:

(curl -x+ip,这里的ip就是我们的目标ip)

(只要我们的源ip不是我们定义有允许的ip就不能访问)

最左边的就是来源ip

访问控制FilesMatch

针对一个链接文件做访问限制,而上面是对一个目录做了访问限制。

修改配置文件,添加内容:

改完了配置文件需要重新加载一下:

/usr/local/apache2.4/bin/apachectl -t  (检测)

/usr/local/apache2.4/bin/apachectl graceful (加载)

测试:







































原文地址:http://blog.51cto.com/13589255/2088320

时间: 2024-08-23 02:51:28

LAMP(6)静态元素过期时间、配置防盗链、访问控制Directory、访问控制FilesMatch的相关文章

11.25 配置防盗链 11.26 访问控制Directory 11.27 访问控制FilesMat

11.25 配置防盗链 11.26 访问控制Directory 11.27 访问控制FilesMatch 11.25 配置防盗链 11.26 访问控制Directory 11.27 访问控制FilesMatch 原文地址:http://blog.51cto.com/wbyyy/2083777

LAMP搭建12:Apache配置防盗链

为了防止别人盗用或者下载我们网站上的资源比如图片,音乐,视频等等,占用我们的带宽,我们可以配置防盗链. 1.编辑虚拟主机配置文件: [[email protected] logs]# vim /usr/local/apache2/conf/extra/httpd-vhosts.conf 2.加入如下内容: -- <IfModule mod_expires.c> ExpiresActive on ExpiresByType image/gif "access plus 1 days&q

11.25 配置防盗链11.26 访问控制Directory11.27 访问控制FilesMatch

11.25 配置防盗链vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf检查与加载配置文件测试在浏览打开图片站点提示错误这时候在第三方站点(ask.apelearn.com)发布超链接,将第三方站点加入白名单就可以访问了点击超链接就可以打开网站图片了再模拟成111.com就状态码变成200注意referer不能随便写一定要写成http://11.26 访问控制Directory这种访问控制是用目录来做的vim /usr/local/apac

Apache(httpd)配置--日志控制与静态元素过期时间配置

一.访问日志不记录静态文件 很多网站大多为静态网页,网页内部的图片.css文件等同样有其网址链接,如果不设置,这些无效的信息也将被存入访问日志中,会导致访问日志文件大小快速增加,占用大量存储空间.我们可以通过设置不记录某些文件来减少无效信息,节省内存资源.那么具体怎么操作呢?按照下面例子操作即可: 步骤:编辑虚拟主机配置文件 [[email protected] ~]# vim /usr/local/apache2/conf/extra/httpd-vhosts.conf ErrorLog "l

85.Apache(httpd)配置--日志控制与静态元素过期时间配置

访问日志不记录静态文件 很多网站大多为静态网页,网页内部的图片.css文件等同样有其网址链接,如果不设置,这些无效的信息也将被存入访问日志中,会导致访问日志文件大小快速增加,占用大量存储空间.我们可以通过设置不记录某些文件来减少无效信息,节省内存资源.那么具体怎么操作呢?按照下面例子操作即可: 步骤:编辑虚拟主机配置文件 [[email protected] ~]# vim /usr/local/apache2/conf/extra/httpd-vhosts.conf ErrorLog "log

LAMP架构(apache访问日志不记录静态文件,静态元素过期时间,apache日志切割)

一.apache访问日志不访问静态文件 浏览器打开后按f12会会出现一个界面,点network,会出现很多请求,访问日志里会记载,有些静态的图片或者文件也会记载,太浪费磁盘空间和磁盘io.所以我们要让日志不记录静态文件 [[email protected] ~]# vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf SetEnvIf Request_URI ".*\.gif$" img SetEnvIf Request_URI &

访问日志不记录静态文件、配置访问日志切割、配置静态元素过期时间

访问日志不记录指定类型的文件 一个网站会有很多元素,尤其是图片.js.css等静态的文件非常多,用户每请求一个页面就会访问诸多的图片.js等静态元素,这些元素的请求都会被记录在日志中.如果一个站点访问量很大,那么访问日志文件增长会非常快,这不仅对于服务器的磁盘空间造成影响,更重要的是会影响磁盘的读写速度.实际上这些巨量的静态元素请求记录到日志里的意义并不大,所以可以限制这些静态元素去记录日志,并且需要把日志按天归档,一天一个日志,这样也可以防止单个日志文件过大. 编辑虚拟主机配置文件vim /u

Linux学习总结(三十六)lamp之配置防盗链

一配置防盗链 referer,中文释义为来源,也就是在说网站从哪里访问过来,在访问日志里,它指的是不同网站之间的跳转链接信息.也就是跳转源的网址.虽然直接在浏览器输入某个站点,跟从其他网站打开该网站,我们感受到的效果没有差别,但是服务器端会记录一个跳转信息,他就是一个referer,如果没有经过跳转,则是一个空的referer.这样我们统计该referer信息,就能统计出某个网站对于我们网站的流量贡献. 防盗链机制就是通过referer的控制,拒绝跳转访问我们自己认为的稀缺资源.比如,淘宝网商之

访问日志不记录静态文件、访问日志切割、静态元素过期时间

访问日志不记录静态文件 当访问很多图片,文档等静态资源的时候,会加大你日志的容量,日志容量占用你磁盘空间后,会出现服务器宕机等很严重的问题,这时需要将日志进行配置优化.当访问网页时不记录这些图片.css.js等信息日志. 1.[[email protected] 111.com]# vi /usr/local/apache2.4/conf/extra/httpd-vhosts.conf <VirtualHost *:80> DocumentRoot "/data/wwwroot/11