服务器反爬虫攻略:Apache/Nginx/PHP禁止某些User Agent抓取网站

一、Apache①、通过修改.htaccess文件修改网站目录下的.htaccess,添加如下代码即可(2种代码任选):可用代码(1):RewriteEngine OnRewriteCond %{HTTP_USER_AGENT} (^$|FeedDemon|Indy Library|Alexa Toolbar|AskTbFXTV|AhrefsBot|CrawlDaddy|CoolpadWebkit|Java|Feedly|UniversalFeedParser|ApacheBench|Micr...

阅读全文

Nginx Lua Redis防止CC攻击

NginxLuaRedis防止CC攻击实现原理:同一个外网IP、同一个网址(ngx.var.request_uri)、同一个客户端(http_user_agent)在某一段时间(CCseconds)内访问某个网址(ngx.var.request_uri)超过指定次数(CCcount),则禁止这个外网IP+同一个客户端(md5(IP+ngx.var.http_user_agent)访问这个网址(ngx.var.request_uri)一段时间(blackseconds)。该脚本使用lua编写(依赖nginx+lua),将信息写到redis(依赖redi...

阅读全文

linux下Nginx+Tomcat实现动静分离架构实现

nginx和tomcat的安装配置这里不再赘述,可以查看之前的tomcat配置笔记:https://sulao.cn/post/210.html直接上干货代码nginx配置如下server{    listen 80;    server_name www.test.com;    index index.html index.htm;    ...

阅读全文

Nginx中502和504错误详解

在使用Nginx时,经常会碰到502BadGateway和504GatewayTime-out错误,下面以Nginx+PHP-FPM来分析下这两种常见错误的原因和解决方案。1.502BadGateway错误在php.ini和php-fpm.conf中分别有这样两个配置项:max_execution_time和request_terminate_timeout。这两项都是用来配置一个PHP脚本的最大执行时间的。当超过这个时间时,PHP-FPM不只会终止脚本的执行,还会终止执行脚本的Worker进程。所以Nginx会发现与自己通信的连接断掉了,就...

阅读全文

CentOS Nginx反向代理 + Apache配置

Nginx处理静态内容是把好手,Apache虽然占用内存多了点,性能上稍逊,但一直比较稳健。倒是Nginx的FastCGI有时候会出现502BadGateway错误。一个可选的方法是Nginx做前端代理,处理静态内容,动态请求统统转发给后端Apache。NginxServer配置如下(测试环境):server {   listen 80;   server_name digicake.com;   location...

阅读全文

Nginx防盗链的3种方法

防盗链是一个很有用的功能,当你的网站被别人盗链图片或者软件资源时,无形的消耗了你的money,流量都是要滑倒真金白银的,而且还会导致我们的网站卡顿,访问缓慢等问题,所以设置防盗链是非常有必要的。一:一般的防盗链如下: location ~* \.(gif|jpg|png|swf|flv)$ {   valid_referers none blocked www.jzxue.com jzxue.com ;  &...

阅读全文

Nginx 开启Gzip压缩的方法

在nginx配置文件nginx.conf的http下中添加gzip on;gzip_min_length 1k;gzip_buffers 16 64k;gzip_http_version 1.1;gzip_comp_level (www.111cn.net)6;gzip_types text/plain application/x-javascript text/css application/xml;gzip_vary ...

阅读全文

Nginx设置alias别名目录访问phpmyadmin

先下载好phpMyAdmin-4.5.1-all-languages.tar.gz到/usr/local/src,这个目录是我存放软件的目录。解压到/usr/local/nginx/html目录#tar -zxvf phpMyAdmin-4.5.1-all-languages.tar.gz -C /usr/local/nginx/html然后重名名#mv phpMyAdmin-4.5.1-all-languages phpmyadmin接下来就是配置nginx文件先备份一个,以防万一#cp&n...

阅读全文

Nginx伪静态配置

nginx里使用伪静态是直接在nginx.conf中写规则的,并不需要像apache要开启写模块(mod_rewrite)才能进行伪静态。nginx只需要打开nginx.conf配置文件,在server里面写需要的规则即可。server { listen       80;     server_name  bbs.jb51.net;    &...

阅读全文