本文共 5019 字,大约阅读时间需要 16 分钟。
Apache优化应用四(防盗链)
目录第一部分 准备工作第二部分 安装Apache服务第三部分 配置盗链第四部分 配置基于域名的防盗链第一部分 准备工作
一:服务器两台:Linux系统—CentOS 7.4;IP地址:192.168.80.10(合法服务器)192.168.80.40(非法盗链服务器)注意:两台服务器都要安装Apahce服务客户端:以WIN7为例,测试验证结果,与服务器在同一网段;IP地址:192.168.80.2二:准备压缩包
//apr-1.6.2.tar.gz和apr-util-1.6.0.tar.gz是httpd2.4以后的版本所需要的插件,必须安装三:将防火墙与selinux关闭
第二部分 安装Apache服务
一:安装编译工具与插件[root@localhost ~]# yum -y install \gcc \
gcc-c++ \make \pcre-devel \expat-devel \perl
二:解压:
[root@localhost ~]# tar xf apr-1.6.2.tar.gz[root@localhost ~]# tar xf apr-util-1.6.0.tar.gz[root@localhost ~]# tar xf httpd-2.4.29.tar.bz2[root@localhost ~]# mv apr-1.6.2 httpd-2.4.29/srclib/apr[root@localhost ~]# mv apr-util-1.6.0 httpd-2.4.29/srclib/apr-util三:配置(自定义个性化配置)
[root@localhost ~]# cd httpd-2.4.29 //必须进入安装目录下[root@localhost httpd-2.4.29]# ./configure \--prefix=/usr/local/httpd \ //指定将httpd程序安装到/usr/local/httpd目录下
--enable-so \ //启用动态加载模块功能--enable-rewrite \ //启用网页地址重写功能,用于网站优化及目录迁移--enable-charset-lite \ //启用字符集支持,以便支持使用各种字符集编码的网页--enable-cgi //启用CGI脚本程序支持,便于扩展网站的应用访问能力
四:编译及安装
[root@localhost httpd-2.4.29]# make && make install//将httpd服务添加到系统服务
[root@localhost httpd-2.4.29]# cp /usr/local/httpd/bin/apachectl /etc/init.d/httpd[root@localhost httpd-2.4.29]# vi /etc/init.d/httpd添加以下两行(注意,“#”不能省略):保存退出[root@localhost httpd-2.4.29]# chkconfig --add httpd //将httpd加入到SERVICE管理器
[root@localhost httpd-2.4.29]# systemctl daemon-reload //重载系统系统管理器五:编辑httpd主配置文件
[root@localhost httpd-2.4.29]# vi /usr/local/httpd/conf/httpd.conf修改以下内容:ServerName localhost保存退出//优化执行路径(执行程序文件的原路径不在PATH环境变量中,做个软链接使其可以执行)[root@localhost httpd-2.4.29]# ln -s /usr/local/httpd/conf/httpd.conf /etc/[root@localhost httpd-2.4.29]# ln -s /usr/local/httpd/bin/* /usr/local/bin///检查语法错误
[root@localhost httpd-2.4.29]# httpd –t或者:[root@localhost httpd-2.4.29]# apachectl –t//查看程序版本六:启动服务
[root@localhost httpd-2.4.29]# systemctl start httpd[root@localhost httpd-2.4.29]# systemctl enable httpd //将httpd设为开机启动[root@localhost httpd-2.4.29]# netstat -anpt | grep 80 //查看httpd服务运行状态七:验证
用WIN7客户端访问服务器浏览器访问:浏览器访问:验证成功(注意,网页默认显示内容为:/usr/local/httpd/htdocs/index.html)第三部分 配置盗链
一:在合法服务器上配置网页文件[root@localhost ~]# cd /usr/local/httpd/htdocs/[root@localhost htdocs]# vi index.html<html><title>I AM OK!</title><body><h1> Test Page! </h1><img src="12.jpg"></body></html>保存退出[root@localhost htdocs]# service httpd restart //重启服务二:验证
Win7下访问:192.168.80.10三:在非法盗链服务器上配置网页文件
[root@localhost ~]# cd /usr/local/httpd/htdocs/[root@localhost htdocs]# vi index.html<html><title>I AM Hei</title><body><h1> Hei..Hei! </h1><img src=";</body></html>保存退出[root@localhost htdocs]# service httpd restart //重启服务四:验证
Win7下访问192.168.80.40//验证盗链成功第四部分 配置基于域名的防盗链
第一步:配置合法服务器一:搭建DNS[root@localhost htdocs]# yum install -y bind bind-utils[root@localhost htdocs]# vi /etc/named.conf //编辑dns主配置文件[root@localhost htdocs]# vi /etc/named.rfc1912.zones //编辑dns区域配置文件[root@localhost htdocs]# cd /var/named/ //编辑dns区域数据文件[root@localhost named]# cp -p named.localhost aa.com.zone[root@localhost named]# vi aa.com.zone[root@localhost named]# service named restart //重启dns服务[root@localhost named]# netstat -anpt | grep named //查看dns运行状态[root@localhost named]# nslookup www.aa.com //解析www.aa.com[root@localhost named]# vi /etc/resolv.conf //配置服务器dnsservername 192.168.80.10保存退出[root@localhost named]# systemctl restart named二:Win7下配置DNS
测试DNS//dns搭建成功三:创建虚拟目录
[root@localhost ~]# vi /etc/httpd.conf //编辑http主配置文件添加以下内容:Alias /doc/ "/opt/doc/"<Directory "/opt/doc">Options Indexes MultiViews FollowSymLinksAllowOverride NoneOrder allow,denyAllow from allRequire all granted</Directory>保存退出[root@localhost ~]# apachectl –t //检查语法错误[root@localhost ~]# service httpd restart //重启服务将error.jpg(防盗链文件)放到/opt/doc/目录下
四:配置防盗链
[root@localhost ~]# apachectl -D DUMP_MODULES | grep rewrite //检查模块[root@localhost ~]# vi /etc/httpd.conf添加以下内容:LoadModule rewrite_module modules/mod_rewrite.so //添加防盗链模块保存退出[root@localhost ~]# apachectl -t //检查语法错误[root@localhost htdocs]# vi /etc/httpd.conf//针对目录做防盗链处理,在htdocs目录属性最后位置新增<Directory "/usr/local/httpd/htdocs">该位置最后添加以下内容:RewriteEngine On //白名单,只允许自己网站内容RewriteCond %{HTTP_REFERER} !^RewriteCond %{HTTP_REFERER} !^.$ [NC]RewriteCond %{HTTP_REFERER} !^$ [NC]RewriteCond %{HTTP_REFERER} !^.$ [NC]RewriteCond %{HTTP_REFERER} !^$ [NC]RewriteRule ..(gif|jpg|swf|png)$ [R,NC] //需要 重定向到一个盗链主机可以访问的位置,否则看不出效果来。[root@localhost htdocs]# apachectl –t[root@localhost htdocs]# service httpd restart第二步:配置非法盗链服务器
一:配置DNS服务[root@localhost ~]# yum install -y bind bind-utils[root@localhost ~]# vi /etc/named.conf[root@localhost ~]# vi /etc/named.rfc1912.zones[root@localhost ~]# cd /var/named/[root@localhost named]# cp -p named.localhost bb.com.zone[root@localhost named]# vi bb.com.zone[root@localhost named]# vi /etc/resolv.confservername 192.168.80.40保存退出[root@localhost named]# systemctl restart named //重启dns服务二:验证
浏览器访问非法盗链服务器:www.bb.com//验证成功转载于:https://blog.51cto.com/12227558/2083456