文章目录 nginx简介 nginx安装 nginx信号控制 nginx虚拟主机配置 日志管理 location 语法 精准匹配的一般匹配 正则匹配 总结 Rewrite语法详解 nginx简介 Nginx ("engine x") 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器. Nginx 是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的 国内用户:自学it网,新浪,赶集,酷6 - nginx安…
nginx的官方手册: http://nginx.org/en/docs/ 编译安装 下载地址: http://nginx.org/en/download.html # 为了支持rewrite功能,我们需要安装pcre yum install pcre* # 安装openssl,如果不需要ssl支持,请跳过这一步 yum install openssl* # 编译 ./configure --prefix=/usr/local/nginx-1.5.1 \ --with-http_ssl_modu…
官方:http://nginx.org nginx [engine x] is an HTTP and reverse proxy server, a mail proxy server, and a generic TCP/UDP proxy server, originally written by Igor Sysoev. For a long time, it has been running on many heavily loaded Russian sites including…
概述 重写URL是非常有用的一个功能,因为它可以让你提高搜索引擎阅读和索引你的网站的能力:而且在你改变了自己的网站结构后,无需要求用户修改他们的书签,无需其他网站修改它们的友情链接:它还可以提高你的网站的安全性:而且通常会让你的网站更加便于使用和更专业. Nginx Rewrite规则相关指令 Nginx Rewrite规则相关指令有if.rewrite.set.return.break等,其中rewrite是最关键的指令. Rewrite 重写,写在server段或者location段都可,后…
nginx location =:精确匹配(必须全部相等) ~:大小写敏感,正则匹配 ~*:忽略大小写,正则匹配 ^~:只需匹配uri部分,精确匹配 @:内部服务跳转,精确匹配 优先级: Exact match = Forward match ^~ / Case sensitive regex ~ / Case insensitive regex ~* Path match / 规则 精确匹配规则是“最大前缀”.正则匹配规则是“顺序匹配”,只要匹配到第一个就停止后面的匹配.通用匹配 “/”最后匹…
概述 location 有"定位"的意思, 根据Uri来进行不同的定位. 在虚拟主机的配置中,是必不可少的,location可以把网站的不同部分,定位到不同的处理方式上.伪静态,反向代理,负载均衡等等都离不开location. 语法 location [=|~|~*|^~] patt {} 中括号可以不写任何参数,此时称为一般匹配,也可以写参数.因此,大类型可以分为3种: location = patt {} [精准匹配] location patt{} [一般匹配] location…
Nginx日志主要分为两种:访问日志和错误日志.日志开关在Nginx配置文件(一般在server段来配置)中设置,两种日志都可以选择性关闭,默认都是打开的. 访问日志access_log #日志格式设定 log_format access '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_us…
Apache默认是把PHP作为本身的一个模块(mod_php)来运行的,而Nginx是以FastCGI方式运行的.所以使用Nginx+PHP就是直接配置为FastCGI模式. 安装PHP 下载地址: http://php.net/downloads #下载PHP cd /usr/local/src/ wget http://cn2.php.net/distributions/php-5.5.0.tar.gz #安装依赖包 yum -y install gcc make gd-devel libj…
配置文件说明 #定义Nginx运行的用户和用户组 user www www; #nginx进程数,建议设置为当前主机的CPU总核心数. worker_processes 8; #全局错误日志定义类型,[ debug | info | notice | warn | error | crit ] error_log ar/loginx/error.log info; #进程文件 pid /usr/local/nginx/logs/nginx.pid; #一个nginx进程打开的最多文件描述符数目,…
在写伪静态的时候,可以先用一个打印$_GET的PHP文件来测试,并且一定注意浏览器缓存,另外正则里如果有"{}",正则要用双引号包起来 dedecms location / { rewrite "^/index.html$" /index.php last; rewrite "^/list-([0-9]+)\.html$" /plus/list.php?tid=$1 last; rewrite "^/list-([0-9]+)-([0-…
重写中用到的指令 if  (条件) {}  设定条件,再进行重写 set #设置变量 return #返回状态码  return 403; break #跳出rewrite rewrite #重写 If  语法格式 If 空格 (条件) { 重写模式 } 条件又怎么写? 答:3种写法 1: “=”来判断相等, 用于字符串比较 2: “~” 用正则来匹配(此处的正则区分大小写) ~* 不区分大小写的正则 3: -f -d -e来判断是否为文件,为目录,是否存在. 例子: if  ($remote_…
一.Linux基础知识 1.人机交互界面: a.GUI b.CLI:[login@hostname workdir]# COMMAND 2.命令知识 通用格式:# COMMAND  OPTIONS ARGUMENTS a.发起一个命令:请求内核将某个二进制程序运行为一个进程: 程序  --> 进程 静态  --> 动态(有生命周期) b.命令本身是一个可执行的程序文件:二进制格式的文件,有可能会调用共享库文件,多数程序文件都存放在:/bin,/sbin,/usr/bin,/usr/sbin,/…
和location类似,也是要负责URL解析的. rewrite  重写 nginx的配置非常多,nginx的第三方模块也非常非常多.不可能讲每一种模块的配置办法.通常碰到一个nginx的新问题你想怎么去解决?所有模块的信息都在官方文档上.刚才使过nginx的location模块. 看/usr/local/nginx/conf/nginx.conf下面有多个server,每一个server下面又有多个location.既然说上下文是server和location,就意味着你可以把重写的规则放在l…
nginx系列友情链接:nginx高性能WEB服务器系列之一简介及安装https://www.cnblogs.com/maxtgood/p/9597596.htmlnginx高性能WEB服务器系列之二命令管理https://www.cnblogs.com/maxtgood/p/9597990.htmlnginx高性能WEB服务器系列之三版本升级https://www.cnblogs.com/maxtgood/p/9598113.htmlnginx高性能WEB服务器系列之四配置文件详解https:…
每次都很容易忘记Nginx的变量,下面列出来了一些常用 $remote_addr //获取客户端ip $binary_remote_addr //客户端ip(二进制) $remote_port //客户端port,如:50472 $remote_user //已经经过Auth Basic Module验证的用户名 $host //请求主机头字段,否则为服务器名称,如:blog.sakmon.com $request //用户请求信息,如:GET ?a=1&b=2 HTTP/1.1 $reques…
一.服务器硬件 二.Linux的发展史 三.Linux的系统安装和配置 四.Xshell的安装和优化 五.远程连接排错 六.Linux命令初识 七.Linux系统初识与优化 八.Linux目录结构 九.Linux三种常用分区方案 十.Linux命令进阶 十一.Linux之文件属性 十二.Linux之特殊符号与正则表达式 十三.Linux之权限 十四.第一阶段(运维基础)练习题 谨记(刻在心里):操作前备份.操作后检查…
01-课程介绍-学习流程 02-服务器硬件-详解 03-服务器核心硬件-服务器型号-电源-CPU 01-课程介绍-学习流程 1.1. 光看不练,等于白干: 1.2 不看光练,思想怠慢: 1.3 即看又练,你就牛逼了: 02-服务器硬件-详解 2.1 笔记本.台式机-- CPU.内存.硬盘.电源.显示器.鼠标.键盘: 2.2 机架式服务器: 稳定: 方便拆卸--模块化: 高性能计算机: 2.3 运维的职责 1.数据不能丢: 2.保证网站7*24小时运行,即服务一直要运行:jd.com,tmall.…
linux运维基础知识大全 一,序言 每一个微不足道的知识,也是未来的铺垫.每一份工作的薪资职位,也是曾经努力的结果. 二,服务器 1,运维人员工作职责: 1)保证数据不丢失:2)保证服务器24小时运行:3)让用户体验良好 2,服务器架构类型:1)机架式:2)刀片式:3)塔式 3,服务器品牌选择:最好使用国产,由于利润问题,IBM (大小型机服务器) :Oracle (数据库的仓库)由于成本太高现在被mysal取代的多:EMC 数据存储设备(磁盘进行存储)由于这个东西不好售后服务,现在多用阿里云…
1    Linux运维基础测试题(第一关) 通过这段时间学习Linux基础命令,为了检测自己对Linux基础命令掌握的情况,从网上整理13到测试题,并将其整理出来供大家参考学习. 1.1    习题实例 1.创建目录/data/oldboy,并且在该目录下创建文件oldboy.txt,然后在文件oldboy.txt里面写入内容“inet addr:172.16.0.2 Bcast:172.16.0.255 Mask:255.255.255.0”(不包含引号). 实例演示: [root@oldb…
背景 鉴于上次一篇文章——“云HBase小组成功抢救某公司自建HBase集群,挽救30+T数据”的读者反馈,对HBase的逆向工程比较感兴趣,并咨询如何使用相应工具进行运维等等.总的来说,就是想更深层理解HBase运维原理,提高运维HBase生产环境的能力,应对各种常见异常现象.不同的读者对hbase的了解程度不同,本文不打算着重编写一个工具怎么使用,而是从HBase的运维基础知识介绍开始讲解.为了能帮助大部分读者提高HBase运维能力,后续会写个“HBase运维系列” 专题系列文章,欢迎大家关…
1. Linux运维基础采集项 做运维,不怕出问题,怕的是出了问题,抓不到现场,两眼摸黑.所以,依靠强大的监控系统,收集尽可能多的指标,意义重大.但哪些指标才是有意义的呢,本着从实践中来的思想,各位工程师在长期摸爬滚打中总结出来的经验最有价值. 在各位运维工程师长期的工作实践中,我们总结了在系统运维过程中,经常会参考的一些指标,主要包括以下几个类别: CPU Load 内存 磁盘 IO 网络相关 内核参数 ss 统计输出 端口采集 核心服务的进程存活信息采集 关键业务进程资源消耗 NTP off…
Nginx负载均衡原理简介与负载均衡配置详解   by:授客  QQ:1033553122   测试环境 nginx-1.10.0 负载均衡原理 客户端向反向代理发送请求,接着反向代理根据某种负载机制转发请求至目标服务器(这些服务器都运行着相同的应用),并把获得的内容返回给客户端,期中,代理请求可能根据配置被发往不同的服务器. 负载均衡配置 测试案例: 如下,分别在两台服务器(192.168.1.103, 192.168.1.102)上部署了相同的应用,并通过8080端口访问网站,如下 http…
centos7.2环境nginx+mysql+php-fpm+svn配置walle自动化部署系统详解 操作系统:centos 7.2 x86_64 安装walle系统服务端 1.以下安装,均在宿主机(一台配置了LAMP/LNMP的linux机器)上操作 安装lnmp环境,建议使用centos7 yum安装,因为centos7 yum源默认支持Php5.4以上版本,避免walle系统不兼容 yum install -y git mariadb mariadb-server nginx php ph…
运维开发笔记整理-Django模型语法 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.模型基本概念 1>.什么是模型 模型是你的数据唯一的,权威的信息源.它包含你所存储数据的必要字段和行为.每个模型对应数据库中唯一的一张表.它包含你所存储数据的必要字段和行为.每个模型对应数据库中唯一的一张表. 2>.如何编写模型 模型:每个模型都用一个类表示,该类继承自“django.db.models.Model”.每个模型有多个类的属性变量,而每一个类的属性变量又都代表类数据库表中…
GoLang基础数据类型--->数组(array)详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.Golang数组简介 数组是Go语言编程中最常用的数据结构之一.顾名思义,数组就是指一系列同一类型数据的集合.数组中包含的每个数据被称为数组元素(element),一个数组包含的元素个数被称为数组的长度.换句话说,与其他大多数语言类似,Go语言的数组也是一个元素类型相同的定长的序列. 二.定义数组   在Go语言中,数组长度在定义后就不可更改,在声明时长度可以为一个常量或…
Java基础-反射(reflect)技术详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.类加载器 1>.JVM 类加载机制  如下图所示,JVM类加载机制分为五个部分:加载,验证,准备,解析,初始化,下面我们就分别来看一下这五个过程.(下图引用自:http://www.importnew.com/25295.html) 加载过程 答:就是指将class文件读入内存(JVM的方法区),并在堆内存中为之创建一个Class对象.任何类被使用时系统都会自动建立一个Class字…
Java基础13:反射与注解详解 什么是反射? 反射(Reflection)是Java 程序开发语言的特征之一,它允许运行中的 Java 程序获取自身的信息,并且可以操作类或对象的内部属性. Oracle官方对反射的解释是 Reflection enables Java code to discover information about the fields, methods and constructors of loaded classes, and to use reflected fi…
GoLang基础数据类型--->字典(map)详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任.   可能大家刚刚接触Golang的小伙伴都会跟我一样,这个map是干嘛的,是函数吗?学过python的小伙伴可能会想到map这个函数.其实它就是Golang中的字典.下面跟我一起看看它的特性吧.map 也就是 Python 中字典的概念,它的格式为“map[keyType]valueType”. map 的读取和设置也类似 slice 一样,通过 key 来操作,只是 slice…
GoLang基础数据类型-切片(slice)详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 数组的长度在定义之后无法再次修改:数组是值类型,每次传递都将产生一份副本.显然这种数据结构无法完全满足开发者的真实需求.在初始定义数组时,我们并不知道需要多大的数组,因此我们就需要“动态数组”.在Go里面这种数据结构叫slice,slice并不是真正意义上的动态数组,而是一个引用类型.slice总是指向一个底层array,slice的声明也可以像array一样,只是不需要长度,它是…
Java基础-变量的定义以及作用域详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.字面量 常量(字面量)表示不能改变的数值(程序中直接出现的值).字面量有时也称为直接量,包括所有的整数,所有的小数,所有的字符,布尔值,null.Java中常量(字面量)的分类: 1>.整数常量: 直接出现的整数,如:1,2,3,4,.....等等. 2>.小数常量: 直接出现的小数,如:3.14,9.8等等. 3>.布尔(boolean)型常量: 只有两个值:true 和 fa…