pcre

如何完成Ubuntu16.04编译安装Nginx

不问归期 提交于 2020-02-26 22:04:29
NGINX可以用作http/https服务器、反向代理服务器、邮件代理服务器、负载平衡器、TLS终结者或缓存服务器。它的设计非常模块化。它有本地模块和由社区创建的第三方模块。它是用C语言编写的,它是一种非常快速和轻量级的软件。 注意:NGINX有两个版本流并行运行——稳定和主线。两个版本都可以在生产服务器上使用。建议在生产中使用主线版本。 从源代码中安装NGINX是相对“容易”的——下载最新版本的NGINX源代码,配置、构建和安装它。 在本教程中,我将使用主线版本,在撰写本文时是1.13.1。当更新版本可用时,更新版本号。 从源代码构建NGINX的需求 强制要求: OpenSSL库版本1.0.2-1.1.0 Zlib库版本1.1.3-1.2.11。 PCRE库版本在4.4-8.40之间 GCC编译器 可选的要求: PERL LIBATOMIC_OPS LibGD MaxMind GeoIP libxml2 libxslt 在你开始之前 1、使用sudo访问创建常规用户。 2、切换到新用户: su - <username> 3、系统更新: sudo apt update && sudo apt upgrade -y 从源代码构建NGINX 1、NGINX是一个用C编写的程序,所以我们需要安装C编译器(GCC)。 sudo apt install build-essential -y

Ubuntu下安装nginx的步骤分享

空扰寡人 提交于 2020-02-26 06:24:47
参考链接 http://www.jb51.net/os/Ubuntu/64596.html 1)、下载   sudo wget http://nginx.org/download/nginx-1.2.2.tar.gz 2)、解压   sudo tar -xzvf nginx-1.2.2.tar.gz 3)、进入相关目录进行以下操作 复制代码 代码如下: ./configure make sudo make install   如果你运气好的话,一切ok,不过...........哈哈。Ubuntu默认的策略是什么库都不装,依赖的库都需要自已手工安装搞定。 一般都会出错的,那么我们来看看可能出现的问题。 4)、常见问题解决办法   缺少pcre library ./configure: error: the HTTP rewrite module requires the PCRE library. You can either disable the module by using --without-http_rewrite_module option, or install the PCRE library into the system, or build the PCRE library statically from the source with nginx by

Python+Apache+CGI完全配置

◇◆丶佛笑我妖孽 提交于 2020-02-26 04:50:16
http://www.tuicool.com/articles/jIZfaqQ 操作系统环境:Ubuntu 15.10 0.需求原因 想在我的Linux上架设Apache来运行CGI程序,方便以后用Apache部署Python的Web应用,但遇到各种各样的问题,网上找的答案要么都太旧了(4/5年前跟现在已经差很多了),要么就不完整,所以这里总结一下,作为最新版本吧。 1.Apache安装 采用的是源码编译安装的形式。首先要说明的是,要成功安装Apache,需要依次安装完下面的软件(函数库)才算是成功地安装了Apache: (1)apr安装 下载地址: http://apr.apache.org/ 注意这个网站上有两个相应的软件下载,一个是apr,另外一个是下面将要安装的apr-util,由于英文名字看起来太容易混淆,所以一定要看清楚下载的是哪个。这里我下载的是: apr-1.5.2.tar.gz 第一步:解包 xpleaf@leaf:~/下载$ tar xvf apr-1.5.2.tar.gz ...... apr-1.5.2/mmap/win32/ apr-1.5.2/mmap/win32/mmap.c apr-1.5.2/apr-config.in 第二步:运行configure检测和设置编译选项 xpleaf@leaf:~/下载/apr-1.5.2$ ./configure

PHP中的正则表达式及模式匹配

萝らか妹 提交于 2020-02-26 03:11:30
PHP中对于正则处理文本提供了两种方式,一种是PCRE方式(PCRE库是一个实现了与perl 5在语法和语义上略有差异(详见下文)的正则表达式模式匹配功能的函数集. 当前的实现对应于perl 5.005.);另一个是POSIX方式。 PCRE函数库中的函数使用的模式语法非常类似perl. 表达式必须用分隔符闭合, 比如一个正斜杠(/). 分隔符可以使任意非字母数字, 除反斜杠(\)和空字节之外的非空白ascii字符. 如果分隔符 在表达式中使用, 需要使用反斜线进行转义. 自php 4.0.4开始, 可以使用perl样式的(), {}, []以及<>作为分隔符. 更详细的解释参见模式语法. 结束分隔符后面可以紧跟模式修饰符来影响匹配效果. 参见模式修饰符. PCRE的模式修正符 i (PCRE_CASELESS) 如果设定此修正符,模式中的字符将同时匹配大小写字母。 s(PCRE_DOTALL) 如果设定了此修正符,模式中的圆点元字符(.)匹配所有的字符,包括换行符。没有此设定的话,则不包括换行符。这和 Perl 的 /s 修正符是等效的。排除字符类例如 [^a] 总是匹配换行符的,无论是否设定了此修正符。 m(PCRE_MULTILINE) 默认情况下,PCRE 将目标字符串作为单一的一“行”字符所组成的(甚至其中包含有换行符也是如此)。“行起始”元字符(^)仅仅匹配字符串的起始

编译安装apache

这一生的挚爱 提交于 2020-02-21 06:03:24
1.安装依赖apr wget http://www.eu.apache.org/dist/apr/apr-1.6.3.tar.gz tar -zxvf apr-1.6.3.tar.gz cd apr-1.6.3 ./configure --prefix=/usr/local/apr make && make install cd .. 2.安装依赖apr-util yum -y install expat-devel wget http://mirrors.cnnic.cn/apache/apr/apr-util-1.6.1.tar.gz tar -zxvf apr-util-1.6.1.tar.gz cd apr-util-1.6.1 ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/bin/apr-1-config make && make install 3.安装依赖pcre yum -y install gcc-c++ wget http://ftp.exim.llorien.org/pcre/pcre-8.10.tar.gz tar -zxvf pcre-8.10.tar.gz cd pcre-8.10 ./configure --prefix=/usr/local/pcre -

Linux下安装Nginx详细图解教程

China☆狼群 提交于 2020-02-16 01:00:01
什么是Nginx? Nginx ("engine x") 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器,在高连接并发的情况下Nginx 是 Apache 服务器不错的替代品.其特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好.目前中国大陆使用nginx网站用户有:新浪、网易、 腾讯,另外知名的微网志Plurk也使用nginx。   Nginx 作为 负载均衡 服务器: Nginx 既可以在内部直接支持 Rails 和 PHP 程序对外进行服务,也可以支持作为 HTTP 代理服务器对外进行服务。 Nginx 采用 C 进行编写, 不论是系统资源开销还是 CPU 使用效率都比 Perlbal 要好很多。作为邮件代理服务器:   Nginx 同时也是一个非常优秀的邮件代理服务器(最早开发这个产品的目的之一也是作为邮件代理服务器), Last.fm 描述了成功并且美妙的使用经验。Nginx 是一个安装非常简单,配置文件非常简洁(还能够支持perl语法), Bugs非常少的服务器: Nginx 启动特别容易,并且几乎可以做到 7*24 不间断运行,即使运行数个月也不需要重新启动。 你还能够不间断服务的情况下进行软件版本的升级。 Nginx的安装 模块依赖性Nginx需要依赖下面3个包 1.

linux下tengine安装

被刻印的时光 ゝ 提交于 2020-02-16 00:52:13
1.什么是tengine? 说到tengine,首先还是得说下nginx了,大家对于nginx并不陌生,对于基本的需求都能满足,如果是涉及高级性能,那么就必须使用 商用版nginx plus 了,一谈到商用,大家就特别敏感,有没有开源免费的呢,有的,所以tengine诞生了。 Tengine( http://tengine.taobao.org/index_cn.html )是由 淘宝网发起的Web服务器项目 。它在Nginx的基础上,针对大访问量网站的需求,添加了很多 高级功能和特性。主要特性有 : 继承Nginx-1.6.2的所有特性,兼容Nginx的配置; 动态模块加载(DSO)支持。加入一个模块不再需要重新编译整个Tengine; 支持SO_REUSEPORT选项,建连性能提升为官方nginx的三倍; 支持SPDY v3协议,自动检测同一端口的SPDY请求和HTTP请求; 流式上传到HTTP后端服务器或FastCGI服务器,大量减少机器的I/O压力; 更加强大的负载均衡能力,包括一致性hash模块、会话保持模块,还可以对后端的服务器进行主动健康检查,根据服务器状态自动上线下线,以及动态解析upstream中出现的域名; 输入过滤器机制支持。通过使用这种机制Web应用防火墙的编写更为方便; 支持设置proxy、memcached、fastcgi、scgi

Linux服务之 Nginx安装

瘦欲@ 提交于 2020-02-13 04:32:44
安装包下载: 链接:https://pan.baidu.com/s/1yna9nvT_9iYw4_0uVQRgFw 提取码:nurm yum -y install gcc automake autoconf libtool make yum install gcc gcc-c++ cd /usr/local/src 一般我们都需要先装pcre, zlib,前者为了重写rewrite,后者为了gzip压缩。2、安装PCRE库 tar -zxvf pcre-8.38.tar.gz cd pcre-8.38 ./configure make make install  3、安装zlib tar -zxvf zlib-1.2.11.tar.gz cd zlib-1.2.11 ./configure make make install  4、有些系统没装ssl cd /usr/local/src tar -zxvf openssl-1.0.1t.tar.gz  5、安装Nginx cd /usr/local/src tar -zxvf nginx-1.4.2.tar.gz cd nginx-1.4.2 ./configure --prefix=/usr/local/nginx --sbin-path=/usr/local/nginx/nginx \ --conf-path=/usr

LNMP源码编译安装(centos7+nginx1.9+mysql5.6+php7)

╄→гoц情女王★ 提交于 2020-02-11 04:39:24
1.准备工作: 1)把所有的软件安装在/Data/apps/,源码包放在/Data/tgz/,数据放在/Data/data,日志文件放在/Data/logs,项目放在/Data/webapps, mkdir -p /Data/apps/ mkdir -p /Data/tgz/ mkdir -p /Data/data/ mkdir -p /Data/logs/ mkdir -p /Data/webapps/ 2)安装源码包所需要的依赖包 yum -y install wget openssl* gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients

php preg_match pcre回溯绕过

大兔子大兔子 提交于 2020-02-07 07:13:58
原理 需要知识:正则NFA回溯原理,php的pcre.backtrack_limit设置。 正则NFA回溯原理 正则表达式是一个可以被"有限状态自动机"接受的语言类。 "有限状态自动机",拥有有限数量的状态,每个状态可以迁移到零个或多个状态,输入字串决定执行哪个状态的迁移。 常见的正则引擎被分为DFA(确定性有限状态自动机)与NFA(非确定性有限状态自动机)他们匹配输入的过程是: DFA:从起始状态开始,一个字符一个字符读取输入串,根据正则一步步确定至下一个转移状态,直到匹配不上或走完整个输入。 NFA:从起始状态开始,一个字符一个字符读取输入串,并与正则表达式进行匹配,如果匹配不上,则进行其他状态。 状态:输入串被匹配的形式。 从上面过程可知,由于NFA存在回溯,所以性能会劣于DFA,但他支持更多功能,大多数语言都是以NFA作为正则引擎。 Demo NFA的匹配模式: 正则:<\?.*[(`;?>].* 输入串:<?php phpinfo();//aaaaa 匹配位置 模式 回溯 < ?php phpinfo();//aaaaa < \?.*[(`;?>].* 0 <? php phpinfo();//aaaaa < \? .*[(`;?>].* 0 <?php phpinfo();//aaaaa <\? .* [(`;?>].* 0 <?php phpinfo();//aaaa