Nginx:rewrite模块
参考:http://nginx.org/en/docs/http/ngx_http_rewrite_module.html
Rewrite对应URL Rewrite,即URL重写,就是把传入web的请求重定向到其他URL的过程。
nginx的重写模块rewrite是一个简单的正则表达式匹配与一个虚拟堆叠机结合,依赖于pcre库(这也为我们之前安装的时候为什么需要安装pcre和pcre-devel软件的原因)。
rewrite会根据相关变量重定向和选择不同的配置,从一个 location跳转到另一个 location,不过这样的循环最多可以执行10次,超过后 nginx将返回500错误。
说明:
功能:实现URL的重写,通过Rewrite规则,可以实现规范的URL,根据变量来做URL转向及选择配置。
作用范围:server{},location{},if{}
优先级:执行server块的rewrite指令 > 执行location匹配 >执行选定的location中的rewrite指令。
应用场景
根据特殊变量、目录、客户端的信息进行URL跳转等
网站换新域名后,让旧 ...
Linux:vmstat命令
本文只总结一些常用的用法,更详细的说明见man vmstat和 vmstat --help。
[toc]
vmstat命令vmstat是Virtual Meomory Statistics(虚拟内存统计)缩写,可对操作系统的虚拟内存、进程、CPU活动进行监控。是对系统的整体情况进行统计,不足之处是无法对某个进程进行深入分析。
语法格式1vmstat [options] [delay [count]]
delay:刷新时间间隔。如果不指定,只显示一条结果。
count:刷新次数。如果不指定刷新次数,但指定了刷新时间间隔,这时刷新次数为无穷。
不加任何参数:
1234[root@test ~]# vmstatprocs -----------memory---------- ---swap-- -----io---- -system-- ------cpu----- r b swpd free buff cache si so bi bo in cs us sy id wa st 5 0 0 259312 142388 7355 ...
Linux:iptables详解
概述iptables是一种Linux系统下的数据包过滤工具,但非真正意义上的防火墙,可以理解喂一种客户端代理,将用户的安全配置设定到底层的框架中,这个框架叫netfilter。
iptables位于用户空间,netfilter位于内核空间。
术语
术语
说明
accept
放行
reject
拒绝
drop
放弃
SNAT
源地址转换
DNAT
是SNAT的一种特殊形式,适用于动态的、临时会变的ip上
MASQUERADE
目标地址转换
chain
链
table
表
rule
规则
工作机制iptables的结构:iptables -> Tables -> Chains -> Rules. 简单地讲,tables由chains组成,而chains又由rules组成。
规则链规则链(chain)名包括(也被称为五个钩子函数(hook functions)):
INPUT链 :处理输入数据包。
OUTPUT链 :处理输出数据包。
FORWARD链 :处理转发数据包。
PREROUTING链 :用于目标地址转换(DNAT) ...
Linux命令分类
Linux命令分类文件传输bye、ftp、ftpcount、ftpshut、ftpwho、ncftp、tftp、uucico、uucp、uupick、uuto、scp
备份压缩ar、bunzip2、bzip2、bzip2recover、compress、cpio、dump、gunzip、gzexe、gzip、lha、restore、tar、unarj、unzip、zip、zipinfo
文件管理diff、diffstat、file、find、git、gitview、ln、locate、lsattr、mattrib、mc、mcopy、mdel、mdir、mktemp、mmove、mread、mren、mshowfat、mtools、mtoolstest、mv、od、paste、patch、rcp、rhmask、rm、slocate、split、tee、tmpwatch、touch、umask、whereis、which、cat、chattr、chgrp、chmod、chown、cksum、cmp、cp、cut、indent
磁盘管理cd、df、dirs、du、edquota、eject、 ...
《浪潮之巅》读书笔记
吴军 / 电子工业出版社 / 2011-8
笔记
要做到高回报必须首先选对题目。 其次,创业的题目不能和主流公司的主要业务撞车。
死亡推动着生命进化和变迁,旧的不去,新的不来。现在,新的人和新的技术,在不久的将来,也会逐渐成为旧的,也会被淘汰。
凡是现实的都是合理的,凡是合理的都是现实的(All that is real is rational; and all that is rational is real)。
托尔斯泰讲,幸福的家庭都是相似的,不幸的家庭各有各的不幸。在信息产业中,这句话要反过来讲,成功的公司各有各的绝招,失败的公司倒是有不少共同之处。
英特尔公司做事情非常专注,知道今天,它一直集中精力于个人微机的处理器上。每一代产品的研发都集中大量的人力和资金,每一次都是只能成功不能失败。
Java有一个无法克服的先天不足,就是速度太慢。
历史上,任何流通性过剩都会大大扩大经济规模,直到形成新的泡沫。
一个人类群星闪耀的时刻出现以前,必然有漫长的岁月流逝而去。
为什么美国小公司能很快成为跨国公司,我认为其中一个原因是反垄断法逼迫公司进 ...
Nagios:监控脚本
监控磁盘12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273#!/bin/shiostat=`which iostat 2>/dev/null`bc=`which bc 2>/dev/null`function help {echo -e "\n\tThis plugin shows the I/O usage of the specified disk, using the iostat external program.\n\tIt prints three statistics: Transactions per second (tps), Kilobytes per second\n\tread from the disk (KB_read/s) and and written to the disk (KB_written/s ...
Nagios:安装nrpe
下载安装12345wget http://heanet.dl.sourceforge.net/project/nagios/nrpe-2.x/nrpe-2.15/nrpe-2.15.tar.gztar -zxvf nrpe-2.15.tar.gzcd nrpe-2.15./configuremake all
安装check_nrpe这个插件 ,之前说过监控机需要安装check_nrpe这个插件,被监控机并不需要,我们在这里安装它是为了测试的目的
1make install-plugin
安装deamon
1make install-daemon
安装配置文件
12make install-daemon-config ls /usr/local/nagios/
安装xinetd脚本
1make install-xinetd
配置修改 /etc/xinetd.d/nrpe
12345678910111213141516# default: on# description: NRPE (Nagios Remote Plugin Executor)s ...
Linux:检查服务器性能
uptime命令1uptime
这个命令可以快速查看机器的负载情况。在Linux系统中,这些数据表示等待CPU资源的进程和阻塞在不可中断IO进程(进程状态为D)的数量。这些数据可以让我们对系统资源使用有一个宏观的了解。
命令的输出分别表示1分钟、5分钟、15分钟的平均负载情况。通过这三个数据,可以了解服务器负载是在趋于紧张还是趋于缓解。如果1分钟平均负载很高,而15分钟平均负载很低,说明服务器正在命令高负载情况,需要进一步排查CPU资源都消耗在了哪里。反之,如果15分钟平均负载很高,1分钟平均负载较低,则有可能是CPU资源紧张时刻已经过去。
上面例子中的输出,可以看见最近1分钟的平均负载非常高,且远高于最近15分钟负载,因此我们需要继续排查当前系统中有什么进程消耗了大量的资源。可以通过下文将会介绍的vmstat、mpstat等命令进一步排查。
dmesg命令1dmesg
该命令会输出系统日志的最后10行。示例中的输出,可以看见一次内核的oom kill和一次TCP丢包。这些日志可以帮助排查性能问题。千万不要忘了这一步。
vmstat命令1234$ vmstatprocs ----- ...
Linux:basename命令和dirname命令
basename命令basename命令用于获取路径中的文件名或路径名,还可以对末尾字符进行删除。
语法格式12basename NAME [SUFFIX]basename OPTION... NAME...
参数说明
参数
说明
-a
支持多个路径
-s
删除后缀
-z
输出每行末尾为NUL,而不是换行符。
实例获取路径末尾的文件名或路径名
1234[root@test ~]# basename /root/users.txt users.txt[root@test ~]# basename /etc/sysconfig/sysconfig
去掉末尾的指定字符
1234567891011# 去掉扩展名[root@test ~]# basename /root/users.txt .txtusers[root@test ~]# basename -s .txt /root/users.txt users# 去掉指定的字符[root@test ~]# basename /root/anaconda-ks.cfg da-ks.cfganacon[root@test ...
Linux:pkill命令
本文只总结一些常用的用法,更详细的说明见man pkill和pkill --help。
pkill命令pkill命令:通过进程名杀死进程。
语法格式1pkill [options] <pattern>
options
option
说明
-<sig>
发送信号
-t
按照终端号来踢出用户连接终端
实例1234567891011121314# 杀死httpd进程[root@test ~]# pkill -9 httpd# 杀死用户连接终端[root@test ~]# w 10:24:33 up 12 days, 1:00, 2 users, load average: 0.00, 0.03, 0.13USER TTY FROM LOGIN@ IDLE JCPU PCPU WHATroot pts/0 192.168.2.70 09:35 10:49 0.02s 0.02s -bashroot pts/1 192.168.2.70 ...