
notepad++ 去掉包含某个字符串的所有行
1、去掉包含字符串aaa的所有行 ^.*aaa.*$ 2、去掉包含字符串aaa的所有行和空行 ^.*aaa.*\r?\n 注意:首先切换到正则模式,然后勾选循环查找
1、去掉包含字符串aaa的所有行 ^.*aaa.*$ 2、去掉包含字符串aaa的所有行和空行 ^.*aaa.*\r?\n 注意:首先切换到正则模式,然后勾选循环查找
一、SuperBench Superbench 测试VPS服务器配置信息、IO性能、到国内节点的网速 wget -qO- –no-check-certificate https://raw.githubusercontent.com/oooldking/script/master/superbench.sh | bash 二、SuperSpeed SuperSpeed 测试VPS服务器到国内节点的网速 wget https://raw.githubusercontent.com/oooldking/script/master/superspeed.sh chmod +x superspeed.sh ./superspeed.sh 三、Serverreview-Benchmark Serverreview-Benchmark 测试VPS服务器配置信息、CPU/内存/硬盘性能、全球节点测速 yum install curl -y curl -LsO https://raw.githubusercontent.com/sayem314/serverreview-benchmark/master/bench.sh chmod +x bench.sh ./bench.sh -a share 四、ZBench # 中文版: wget -N –no-check-certificate https://raw.githubusercontent.com/FunctionClub/ZBench/master/ZBench-CN.sh && bash ZBench-CN.sh # 或者英文版: wget -N –no-check-certificate https://raw.githubusercontent.com/FunctionClub/ZBench/master/ZBench.sh && bash ZBench.shli 五、91Yuntest 测试包含:常规系统参数检测,带宽测试,IO测试和全国ping测试、下载测试、路由测试、回程路由测试。下面代码直接复制到机器使用即可,默认会生成html页。 wget -N –no-check-certificate https://raw.githubusercontent.com/91yun/91yuntest/master/test.sh && bash test.sh -i “io,bandwidth,chinabw,download,traceroute,backtraceroute,allping,gotoping” 转载至互联网。。。
灵动标签判断某个字段有内容则显示无内容则显示什么,听起来是不是很拗口,但有此需求的站长一定知道是这啥意思吧,其实就是判断某字段是否为空,其实这种判断是非常简单的,这里只是分享一个简要的写法,分享给精益求精的站长们。 <?=$bqr[ftitle]?"本文由<a href='$bqr[golink]' target='_blank'><strong>$bqr[ftitle]</strong></a>投递":"<a href='$bqr[golink]' target='_blank'>$bqr[golink]</a>";?> 分行写的话等同于以下意思 [e:loop 你自己的灵动标签] <? if($bqr[ftitle]!=''){ $diy='ftitle里面不是空的'; }else{ $diy='ftitle里是空的'; } ?> [/e:loop]
额,这篇文章是bt(宝塔)面板来写的文章,其他的程序如果是wdcp管理面板也有添加shell脚本的功能,大鸟自己用的是bt(宝塔)面板,所以说说如何添加shell 脚本通过nginx日志封访问频率过高的IP,就是你的网站被攻击的一些简单的应对措施,当然了,这些网上也有很多其他的相类似的教程,大鸟这里就是整合到bt(宝塔)面板来说而已。 bt(宝塔)面板用起来方便点,面板管理里面刚好有一个添加shell脚本的功能,可以定时执行一些数据备份啊等等一些常见功能,下面来看下! 第一、打开宝塔管理面板点击计划任务 大鸟已经标注了红框,大家可以很清楚的看到,就是这个地方添加一些任务啊,如果需要可以仔细看看。 第二、添加shell脚本来封闭访问过高的ip #/bin/bash#日志文件路径logfile=/usr/local/tengine/logs last_minutes=1#开始时间start_time=`date -d"$last_minutes minutes ago" +"%H:%M:%S"`echo $start_time#结束时间stop_time=`date +"%H:%M:%S"`echo $stop_time#过滤出单位之间内的日志并统计最高ip数tac $logfile/access.log | awk -v st="$start_time" -v et="$stop_time" '{t=substr($4,RSTART+14,21);if(t>=st && t<=et) {print $0}}' \ | awk '{print $1}' | sort | uniq -c | sort -nr > $logfile/log_ip_top10 ip_top=`cat $logfile/log_ip_top10 | head -1 | awk '{print $1}'` ip=`cat $logfile/log_ip_top10 | awk '{if($1>200)print $2}'`# 单位时间[1分钟]内单ip访问次数超过200次的ip通过ipset封锁for line in $ipdoecho $line >> $logfile/black.log ipset add blacklist $linedone 第三、设置shell脚本的执行时间 我们添加好了脚本需要设置在服务器中的执行时间,来看看如何设置 大鸟设置的是每天1点30分开始执行这个脚本程序来封掉访问过高的ip,如果需要修改执行时间,可以自己调整,bt(宝塔)面板给出了很多时间设置。 总结、输入任务名称,选择执行周期,输入执行的脚本内容。 注意事项: 输入脚本内容前请检查脚本内容,确保脚本的正常执行,否则将会导致,计划任务执行后,脚本执行错误。无法正常执行。 过程就是这样,其实也是很简单,只需要一段shell代码就可以解决很多问题。大鸟对于这些也只是懂的皮毛,只是把自己维护网站的一点心得分享给大家!
一、VM下载 二、虚拟机安装 三、秘钥 一、VM下载 vm下载: https://www.vmware.com/cn/products/workstation-pro/workstation-pro-evaluation.html 二、虚拟机安装 打开下载好的exe安装程序 点击下一步 接受“许可协议”,点击下一步 用户体验可以不勾选,点击下一步 自定义安装,点击“更改” 选择想要安装的位置点击确定、下一步 点击安装 正在安装 安装完成 提示需要重启系统 ## 三、秘钥 重启系统后进入VM,提示需要输入激活码,把激活码复制进去就能使用了 VM16激活码: ZF3R0-FHED2-M80TY-8QYGC-NPKYF YF390-0HF8P-M81RQ-2DXQE-M2UT6 ZF71R-DMX85-08DQY-8YMNC-PPHV8
只需要三个文件就可以了: 注意: 文件自命名需修改表单提交url,包含的类文件名: HTML表单文件: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta charset="utf-8"> <title>PHP利用smtp类发送邮件范例</title> </head> <body> <form action="sendmail.php" method="post"> <p>收件人:<input type="text" name="toemail" /></p> <p>标 题:<input type="text" name="title" /></p> <p>内 容:<textarea name="content" cols="50" rows="5"></textarea></p> <p><input type="submit" value="发送" /></p> </form> </body> </html> 表单提交的PHP文件: <meta charset="utf-8"> <?php /** * 1. 检查邮箱设置是否启用了smtp服务; * 2. 是否是php环境的问题导致; * 3. 将26行的$smtp->debug = false改为true,可以显示错误信息,然后可以复制报错信息到网上搜一下错误的原因 */ require_once "email.class.php"; //******************** 配置信息 ******************************** $smtpserver = "smtp.163.com"; //SMTP服务器 $smtpserverport =25; //SMTP服务器端口 $smtpusermail = "xxx@163.com"; //开通smtp服务的邮箱号码 $smtpemailto = $_POST['toemail']; //发送给谁 $smtpuser = "xxx@163.com"; //开通smtp服务的邮箱号码 $smtppass = "xxx"; //SMTP服务器的秘钥 $mailtitle = $_POST['title']; //邮件主题 $mailcontent = "<h1>".$_POST['content']."</h1>"; //邮件内容 $mailtype = "HTML"; //邮件格式(HTML/TXT),TXT为文本邮件 //************************ 配置信息 **************************** $smtp = new smtp($smtpserver,$smtpserverport,true,$smtpuser,$smtppass); //这里面的一个true是表示使用身份验证,否则不使用身份验证. $smtp->debug = false;//是否显示发送的调试信息 $state = $smtp->sendmail($smtpemailto, $smtpusermail, $mailtitle, $mailcontent, $mailtype); echo "<div style='width:300px; margin:36px auto;'>"; if($state==""){ echo "对不起,邮件发送失败!请检查邮箱填写是否有误。"; echo "<a href='demo.html'>点此返回</a>"; exit(); } echo "恭喜!邮件发送成功!!"; echo "<a href='demo.html'>点此返回</a>"; echo "</div>"; ?> 类文件: <?php class Smtp { var $smtp_port; var $time_out; var $host_name; var $log_file; var $relay_host; var $debug; var $auth; var $user; var $pass; var $sock; function Smtp($relay_host = "", $smtp_port = 25,$auth = false,$user,$pass) { $this->debug = FALSE; $this->smtp_port = $smtp_port; $this->relay_host = $relay_host; $this->time_out = 3600; $this->auth = $auth; $this->user = $user; $this->pass = $pass; $this->host_name = "localhost"; $this->log_file = ""; $this->sock = FALSE; } function sendmail($to, $from, $subject = "", $body = "", $mailtype, $cc = "", $bcc = "", $additional_headers = "") { $mail_from = $this->get_address($this->strip_comment($from)); $body = ereg_replace("(^|(\r\n))(\.)", "\1.\3", $body); $header = "MIME-Version:1.0\r\n"; if($mailtype=="HTML") { $header .= "Content-Type:text/html\r\n"; } $header .= "To: ".$to."\r\n"; if ($cc != "") { $header .= "Cc: ".$cc."\r\n"; } $header .= "From: $from<".$from.">\r\n"; $header .= "Subject: ".$subject."\r\n"; $header .= $additional_headers; $header .= "Date: ".date("r")."\r\n"; $header .= "X-Mailer:By Redhat (PHP/".phpversion().")\r\n"; list($msec, $sec) = explode(" ", microtime()); $header .= "Message-ID: <".date("YmdHis", $sec).".".($msec*1000000).".".$mail_from.">\r\n"; $TO = explode(",", $this->strip_comment($to)); if ($cc != "") { $TO = array_merge($TO, explode(",", $this->strip_comment($cc))); } if ($bcc != "") { $TO = array_merge($TO, explode(",", $this->strip_comment($bcc))); } $sent = TRUE; foreach ($TO as $rcpt_to) { $rcpt_to = $this->get_address($rcpt_to); ...
There is no excerpt because this is a protected post.
There is no excerpt because this is a protected post.
There is no excerpt because this is a protected post.
There is no excerpt because this is a protected post.