module搭建流媒体服务器的正确性姿势,7进程详解

By admin in 美高梅手机版4858 on 2019年4月5日

  以前在动用nginx和nginx-rtmp-module搭建流媒体服务器的时候蒙受3个很狼狈的标题,正是在把nginx-rtmp-module模块添加到nginx中去的时候,笔者最伊始运用的做法是先卸载原来的nginx,再下载nginx和nginx-rtmp-module的源码重新编写翻译并安装.重装完之后作者测试了一晃流媒体服务器是常规的,不过接下去难题来了,由于本人有局地WEB工程是布署在事先搭建好的LUMP环境下的,未来重装了nginx,那个工程需求重新安顿.于是,作者又开首重新陈设这么些WEB工程,不过结果让自家哭晕在了厕所,因为nginx的目录结构产生了十分的大改观,导致自家不能够布置原来的WEB工程了.此后作者陷入了不长日子的挣扎和犹疑,网上寻找了很多缓解方案,可是那一个方案大多都以讲求讲哪些编写翻译安装nginx以及开始展览推拉流测试,未有涉及到自家那地点的难题.后来,作者在浏览帖子的时候来看有人说把团结编写翻译的nginx可执行文件替换掉原来的nginx共享库能缓解难点,于是立马试了1把,结果发现真正能够!今后的nginx能而且运维流媒体服务和配置WEB工程,鱼与熊掌兼得!

  此前在接纳nginx和nginx-rtmp-module搭建流媒体服务器的时候遭逢2个很狼狈的难点,正是在把nginx-rtmp-module模块添加到nginx中去的时候,我最开始选取的做法是先卸载原来的nginx,再下载nginx和nginx-rtmp-module的源码重新编写翻译并安装.重装完之后小编测试了弹指间流媒体服务器是正规的,不过接下去难点来了,由于本人有一些WEB工程是布局在事先搭建好的LUMP环境下的,未来重装了nginx,那些工程须求重新安插.于是,小编又起来重新计划那么些WEB工程,可是结果让笔者哭晕在了厕所,因为nginx的目录结构产生了十分的大转移,导致自个儿不能够铺排原来的WEB工程了.此后自个儿陷入了非常长日子的挣扎和迟疑,网上检索了无数消除方案,不过那么些方案大多都以注重讲什么样编写翻译安装nginx以及实行推拉流测试,没有涉嫌到自家那方面包车型客车问题.后来,作者在浏览帖子的时候来看有人说把本人编写翻译的nginx可执行文件替换掉原来的nginx共享库能消除难点,于是立马试了一把,结果发现真正可以!今后的nginx能同时运转流媒体服务和配备WEB工程,鱼与熊掌兼得!

Ubuntu下利用nginx和nginx-rtmp-module搭建流媒体服务器的科学姿势,nginxrtmpmodule

  此前在行使nginx和nginx-rtmp-module搭建流媒体服务器的时候境遇多少个很为难的难点,就是在把nginx-rtmp-module模块添加到nginx中去的时候,作者最起初运用的做法是先卸载原来的nginx,再下载nginx和nginx-rtmp-module的源码重新编写翻译并安装.重装完之后作者测试了弹指间流媒体服务器是常规的,不过接下去问题来了,由于笔者有壹些WEB工程是铺排在事先搭建好的LUMP环境下的,以往重装了nginx,那么些工程须求重新布署.于是,作者又开首重新安顿那个WEB工程,可是结果让作者哭晕在了洗手间,因为nginx的目录结构爆发了一点都不小改变,导致自家不可能布置原来的WEB工程了.此后本身陷入了不短日子的垂死挣扎和动摇,网上搜寻了成都百货上千消除方案,不过那几个方案大多都以尊崇讲什么样编写翻译安装nginx以及开始展览推拉流测试,未有涉及到自个儿那上头的难点.后来,笔者在浏览帖子的时候看看有人说把自个儿编写翻译的nginx可执行文件替换掉原来的nginx共享库能一蹴即至难点,于是立马试了一把,结果发现确实能够!以往的nginx能同时运维流媒体服务和安顿WEB工程,鱼与熊掌兼得!

  上边简单介绍一下自我的操作进程,希望能为赶上同样难点的您带来一些拉拉扯扯(作者的安顿环境:Ubuntu
Server 16.0四 + nginx一.十.0 + nginx-rtmp-module-master).

  壹.先选拔apt-get的艺术安装nginx.最近用此办法安装的nginx的版本号为1.拾.0

1 sudo apt-get update
2 sudo apt-get install nginx

  二.到您欣赏的目录下用你欣赏的名字创办多个目录,用于存放nginx和nginx-rtmp-module的源码,例如:我在根目录/softwares(softwares也是自己要好创办的)下边创设了nginx目录,接下去小编会把nginx和nginx-rtmp-module下载到nginx目录下.

1 cd softwares/
2 sudo mkdir nginx

  3.进入nginx目录.

1 cd nginx/

美高梅手机版4858 ,  四.下载nginx源码,注意:下载的源码版本须求与步骤一装置的nginx的版本保持一致,以幸免不须求的难点.获取nginx源码的不贰秘籍很多,此处推荐三种方式.

  格局a:在终端履行apt-get source nginx命令,直接得到到相应版本的源码.

1 sudo apt-get source nginx

  此格局下载完之后会活动解压,nginx-一.拾.0目录即nginx源码目录.

  形式b:在nginx的官网上边找到对应版本然后下载.

1 sudo wget http://nginx.org/download/nginx-1.10.0.tar.gz

  此办法下载完事后需求自个儿手动解压.解码命令:

1 sudo tar zxvf nginx-1.10.0.tar.gz

  5.下载nginx-rtmp-module的源码.

1 sudo wget https://github.com/arut/nginx-rtmp-module/archive/master.zip

  因为nginx-rtmp-module已在GitHub上开源,所以也能够直接从GitHub上获取.GitHub地址:
.

module搭建流媒体服务器的正确性姿势,7进程详解。  6.解压nginx-rtmp-module源码的削减包.

1 sudo unzip master.zip

  柒.进去nginx源码目录.

1 cd nginx-1.10.0/

  八.查看当前nginx的布署音信,并将近来安插新闻完全保留到三个地点,前面在编译nginx源码的时候须求基于当前的安顿音讯来进展配置.

1 nginx -V

  注意命令行中的V是大写哦,小写只雅观到nginx的版本号.笔者当下的nginx配置音讯如下:

--with-cc-opt='-g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2' --with-ld-opt='-Wl,-Bsymbolic-functions -fPIE -pie -Wl,-z,relro -Wl,-z,now' --prefix=/usr/share/nginx --conf-path=/etc/nginx/nginx.conf --http-log-path=/var/log/nginx/access.log --error-log-path=/var/log/nginx/error.log --lock-path=/var/lock/nginx.lock --pid-path=/run/nginx.pid --http-client-body-temp-path=/var/lib/nginx/body --http-fastcgi-temp-path=/var/lib/nginx/fastcgi --http-proxy-temp-path=/var/lib/nginx/proxy --http-scgi-temp-path=/var/lib/nginx/scgi --http-uwsgi-temp-path=/var/lib/nginx/uwsgi --with-debug --with-pcre-jit --with-ipv6 --with-http_ssl_module --with-http_stub_status_module --with-http_realip_module --with-http_auth_request_module --with-http_addition_module --with-http_dav_module --with-http_geoip_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_image_filter_module --with-http_v2_module --with-http_sub_module --with-http_xslt_module --with-stream --with-stream_ssl_module --with-mail --with-mail_ssl_module --with-threads

  玖.配置nginx源码编写翻译消息,将nginx-rtmp-module添加到nginx中.

1 sudo ./configure --prefix=/usr/share/nginx --conf-path=/etc/nginx/nginx.conf --http-log-path=/var/log/nginx/access.log --error-log-path=/var/log/nginx/error.log --lock-path=/var/lock/nginx.lock --pid-path=/run/nginx.pid --http-client-body-temp-path=/var/lib/nginx/body --http-fastcgi-temp-path=/var/lib/nginx/fastcgi --http-proxy-temp-path=/var/lib/nginx/proxy --http-scgi-temp-path=/var/lib/nginx/scgi --http-uwsgi-temp-path=/var/lib/nginx/uwsgi --with-debug --with-pcre-jit --with-ipv6 --with-http_ssl_module --with-http_stub_status_module --with-http_realip_module --with-http_auth_request_module --with-http_addition_module --with-http_dav_module --with-http_geoip_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_v2_module --with-http_sub_module --with-http_xslt_module --with-stream --with-stream_ssl_module --with-mail --with-mail_ssl_module --with-threads --add-module=../nginx-rtmp-module-master

  注意,那1行命令其实是那样组合的: sudo ./configure
<原来的布局音信>
–add-module=../nginx-rtmp-module-master.那样就将nginx-rtmp-module添加到nginx配置内部了,同时将事先封存的nginx配置新闻添加到了用于这一次编译的配备音信里面,尽恐怕地确认保障了编写翻译出来的nginx与原来的nginx成效一致.心细的同学会发现,其实笔者在安插nginx音信的时候并从未将本来有所的配置音信都写进去,原因是一旦整个复制粘贴过去,在编写翻译的时候会见世一些不太好处理的荒谬,那些错误暂且半会儿还没找到好的消除方案,所以就收缩了一部分布局消息,缩减之后在成效模块上并无太大差距,所以可放心使用.

  十.配置实现未来,执行make命令开始编写翻译nginx源码.编写翻译实现之后,会在nginx源码目录的objs目录下生成nginx可实行文件.

1 sudo make

  1一.将扭转的nginx可执行文件拷贝到/usr/sbin目录下,替换原来的nginx共享库文件.
注意:
原来/usr/sbin目录有三个nginx共享库文件,大家使用编写翻译出来的nginx可执行文件对其展开替换.

1 sudo nginx /usr/sbin

  12.重启nginx.

1 sudo service nginx restart

  一三.双重查看nginx配置信息.

1 nginx -V

  可以看到nginx-rtmp-module模块已经添加到了nginx里面.

1 --prefix=/usr/share/nginx --conf-path=/etc/nginx/nginx.conf --http-log-path=/var/log/nginx/access.log --error-log-path=/var/log/nginx/error.log --lock-path=/var/lock/nginx.lock --pid-path=/run/nginx.pid --http-client-body-temp-path=/var/lib/nginx/body --http-fastcgi-temp-path=/var/lib/nginx/fastcgi --http-proxy-temp-path=/var/lib/nginx/proxy --http-scgi-temp-path=/var/lib/nginx/scgi --http-uwsgi-temp-path=/var/lib/nginx/uwsgi --with-debug --with-pcre-jit --with-ipv6 --with-http_ssl_module --with-http_stub_status_module --with-http_realip_module --with-http_auth_request_module --with-http_addition_module --with-http_dav_module --with-http_geoip_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_v2_module --with-http_sub_module --with-http_xslt_module --with-stream --with-stream_ssl_module --with-mail --with-mail_ssl_module --with-threads --add-module=../nginx-rtmp-module-master

  试了试推流拉流,功能平常,再运转了须臾间原来的WEB工程,也健康!

  最终,笔者说雀巢(Nestle)下为啥要先通过apt-get的办法安装nginx,再开始展览编写翻译替换.原因是为了便于在LUMP环境下安插WEB工程.就算不先通过apt-get的法门安装nginx,而是直接下载源码编写翻译安装,则nginx的配备目录会不齐全,很难去计划WEB项目(恐怕通过有些操作也能落到实处布署,不过实际怎么操作照旧要花时间去商量nginx的).假诺不搭建流媒体服务,笔者提出都由此apt-get的方法安装nginx,步骤省略又便捷!

 

此前在采纳nginx和nginx-rtmp-module搭建流媒体服务器的时候蒙受二个…

前言

  上面简单介绍一下笔者的操作进程,希望能为遇见同样难题的您带来1些支持(作者的配备环境:Ubuntu
Server 1陆.0四 + nginx1.10.0 + nginx-rtmp-module-master).

  上面简单介绍一下笔者的操作进度,希望能为遇见相同题指标你带来一些声援(笔者的布置环境:Ubuntu
Server 1陆.0四 + nginx一.十.0 + nginx-rtmp-module-master).

多年来出于换了硬盘重装了(升级)系统到Ubuntu1六.0四后头,开发环境也要重新安装,其实1六.0四源里头私下认可的PHP版本正是七.x,不过有个难点就算从未OCI扩充,有项目须要动用到Oracle数据库。

  一.先选取apt-get的办法安装nginx.近年来用此办法安装的nginx的版本号为一.十.0

  一.先选择apt-get的措施安装nginx.最近用此措施安装的nginx的版本号为壹.10.0

预备编译环境

1 sudo apt-get update
2 sudo apt-get install nginx
1 sudo apt-get update
2 sudo apt-get install nginx

由于整个编写翻译太过分繁琐,而且不少信赖会有标题,所以我们选取此外1种方案,能采纳apt-get安装都选取apt-get安装。不能够运用apt-get才团结编写翻译,那样能够节约多量的年月。因为有个别正视真的是很胸闷。

  贰.到您欣赏的目录下用你喜欢的名字创办一个索引,用于存放nginx和nginx-rtmp-module的源码,例如:作者在根目录/softwares(softwares也是作者本身创建的)上面创制了nginx目录,接下去笔者会把nginx和nginx-rtmp-module下载到nginx目录下.

  二.到您欢乐的目录下用你欢快的名字创办一个索引,用于存放nginx和nginx-rtmp-module的源码,例如:作者在根目录/softwares(softwares也是自家自个儿创造的)下边制造了nginx目录,接下去作者会把nginx和nginx-rtmp-module下载到nginx目录下.

是因为在Ubuntu1陆.0四上,暗中同意的PHP版本正是柒.x。由于大家要动用Apache二.四+PHP,所以安装如下模块即可直接解析PHP。

1 cd softwares/
2 sudo mkdir nginx
1 cd softwares/
2 sudo mkdir nginx
sudo apt-get install php-dev libapache2-mod-php

  3.进入nginx目录.

  3.进入nginx目录.

如此那般最主题的模块就设置好了,倘若还索要其它的模块,能够透过apt-get神速安装;比如还亟需MySQL和mb_string相关的模块。

1 cd nginx/
1 cd nginx/
sudo apt-get install php-mysql php-mbstring

  肆.下载nginx源码,注意:下载的源码版本必要与步骤1安装的nginx的本子保持一致,以制止不供给的难题.获取nginx源码的途径很多,此处推荐三种格局.

  四.下载nginx源码,注意:下载的源码版本须要与步骤一设置的nginx的版本保持壹致,以免止不要求的难点.获取nginx源码的不二秘诀很多,此处推荐两种形式.

那样就会自动安装好有关的模块。

  情势a:在巅峰履行apt-get source nginx命令,直接拿走到对应版本的源码.

  格局a:在终极履行apt-get source nginx命令,直接拿走到对应版本的源码.

安装Oracle Client

1 sudo apt-get source nginx
1 sudo apt-get source nginx

鉴于要编写翻译OCI扩大,我们供给Oracle客户端,那里大家下载Oracle Instant
Client,选择Instant Client for Linux x86-64 basic本子下载。

  此措施下载完事后会自行解压,nginx-一.拾.0索引即nginx源码目录.

  此措施下载完事后会自行解压,nginx-1.10.0索引即nginx源码目录.

除此以外要编译OCI必须还亟需instant client SDK包,下载解压之后合并到Base。

  方式b:在nginx的官网上边找到对应版本然后下载.

  方式b:在nginx的官网上边找到对应版本然后下载.

付出的网页最终边也有安装步骤,那里简述一下

1 sudo wget http://nginx.org/download/nginx-1.10.0.tar.gz
1 sudo wget http://nginx.org/download/nginx-1.10.0.tar.gz
  • 解压zip包,放置到有些目录下
  • 为近日版本的Instant Client创造合适的链接
  • 安装环境变量

  此方法下载完现在必要团结手动解压.解码命令:

  此格局下载完之后须要团结手动解压.解码命令:

sudo unzip instantclient-basic-linux.x64-12.1.0.2.0.zip
sudo unzip instantclient-sdk-linux.x64-12.1.0.2.0.zip
sudo mv instantclient_12_1/ /opt/oracle/
cd /opt/oracle/instantclient_12_1/
# 建立符号链接
sudo ln -s libclntsh.so.12.1 libclntsh.so
sudo ln -s libocci.so.12.1 libocci.so
# 打开 /etc/profile 在最后面加入
export LD_LIBRARY_PATH=/opt/oracle/instantclient_12_1:$LD_LIBRARY_PATH
export PATH=/opt/oracle/instantclient_12_1:$PATH
# 最后source一下,使配置生效
source /etc/profile
1 sudo tar zxvf nginx-1.10.0.tar.gz
1 sudo tar zxvf nginx-1.10.0.tar.gz

下载PHP源码

  5.下载nginx-rtmp-module的源码.

  5.下载nginx-rtmp-module的源码.

先是我们要规定已经安装的PHP的版本,由于应用apt-get安装,版本恐怕不是PHP官网放的摩登的版本,使用下边包车型大巴命令既可查阅

1 sudo wget https://github.com/arut/nginx-rtmp-module/archive/master.zip
1 sudo wget https://github.com/arut/nginx-rtmp-module/archive/master.zip
php -v

  因为nginx-rtmp-module已在GitHub上开源,所以也足以一贯从GitHub上获取.GitHub地址:
.

  因为nginx-rtmp-module已在GitHub上开源,所以也得以一向从GitHub上获取.GitHub地址:
.

发现自家的装置的版本是7.0.肆,那么大家相应的下载PHP-七.0.4版本的源码。

  陆.解压nginx-rtmp-module源码的压缩包.

  陆.解压nginx-rtmp-module源码的削减包.

二种办法得以下载到源码。

1 sudo unzip master.zip
1 sudo unzip master.zip
  1. 从官网下载源码包
  2. 从GitHub 仓库 clone

  七.进来nginx源码目录.

  7.进去nginx源码目录.

官网下载源码很简单,打开php.net的Download页面,选拔要下载的本子。也许从GitHub仓库clone钦赐版本(只怕先clone再checkout想要的本子),如

1 cd nginx-1.10.0/
1 cd nginx-1.10.0/
git clone -b PHP-7.0.4 https://github.com/php/php-src && cd php-src

  八.查看当前nginx的布置音讯,并将眼下安插音信完全保存到七个地方,前边在编译nginx源码的时候须要基于当前的安插新闻来开始展览配置.

  八.查看当前nginx的配备音信,并将眼下布署新闻完全保留到三个地方,前边在编写翻译nginx源码的时候须求依照当前的布局消息来拓展配置.

编译OCI8/PDO_OCI

1 nginx -V
1 nginx -V

透过如上的手续大家早就跻身到下载的PHP源码根目录了,那么我们起始编写翻译。

  注意命令行中的V是大写哦,小写只好见到nginx的版本号.小编如今的nginx配置信息如下:

  注意命令行中的V是大写哦,小写只雅观看nginx的版本号.笔者当下的nginx配置音讯如下:

编译oci8

--with-cc-opt='-g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2' --with-ld-opt='-Wl,-Bsymbolic-functions -fPIE -pie -Wl,-z,relro -Wl,-z,now' --prefix=/usr/share/nginx --conf-path=/etc/nginx/nginx.conf --http-log-path=/var/log/nginx/access.log --error-log-path=/var/log/nginx/error.log --lock-path=/var/lock/nginx.lock --pid-path=/run/nginx.pid --http-client-body-temp-path=/var/lib/nginx/body --http-fastcgi-temp-path=/var/lib/nginx/fastcgi --http-proxy-temp-path=/var/lib/nginx/proxy --http-scgi-temp-path=/var/lib/nginx/scgi --http-uwsgi-temp-path=/var/lib/nginx/uwsgi --with-debug --with-pcre-jit --with-ipv6 --with-http_ssl_module --with-http_stub_status_module --with-http_realip_module --with-http_auth_request_module --with-http_addition_module --with-http_dav_module --with-http_geoip_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_image_filter_module --with-http_v2_module --with-http_sub_module --with-http_xslt_module --with-stream --with-stream_ssl_module --with-mail --with-mail_ssl_module --with-threads
--with-cc-opt='-g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2' --with-ld-opt='-Wl,-Bsymbolic-functions -fPIE -pie -Wl,-z,relro -Wl,-z,now' --prefix=/usr/share/nginx --conf-path=/etc/nginx/nginx.conf --http-log-path=/var/log/nginx/access.log --error-log-path=/var/log/nginx/error.log --lock-path=/var/lock/nginx.lock --pid-path=/run/nginx.pid --http-client-body-temp-path=/var/lib/nginx/body --http-fastcgi-temp-path=/var/lib/nginx/fastcgi --http-proxy-temp-path=/var/lib/nginx/proxy --http-scgi-temp-path=/var/lib/nginx/scgi --http-uwsgi-temp-path=/var/lib/nginx/uwsgi --with-debug --with-pcre-jit --with-ipv6 --with-http_ssl_module --with-http_stub_status_module --with-http_realip_module --with-http_auth_request_module --with-http_addition_module --with-http_dav_module --with-http_geoip_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_image_filter_module --with-http_v2_module --with-http_sub_module --with-http_xslt_module --with-stream --with-stream_ssl_module --with-mail --with-mail_ssl_module --with-threads

跻身到扩展oci八的源码目录,使用phpize

  九.安排nginx源码编写翻译音讯,将nginx-rtmp-module添加到nginx中.

  玖.布署nginx源码编写翻译音信,将nginx-rtmp-module添加到nginx中.

cd ext/oci8
phpize
./configure --with-oci8=instantclient,/opt/oracle/instantclient_12_1
sudo make
1 sudo ./configure --prefix=/usr/share/nginx --conf-path=/etc/nginx/nginx.conf --http-log-path=/var/log/nginx/access.log --error-log-path=/var/log/nginx/error.log --lock-path=/var/lock/nginx.lock --pid-path=/run/nginx.pid --http-client-body-temp-path=/var/lib/nginx/body --http-fastcgi-temp-path=/var/lib/nginx/fastcgi --http-proxy-temp-path=/var/lib/nginx/proxy --http-scgi-temp-path=/var/lib/nginx/scgi --http-uwsgi-temp-path=/var/lib/nginx/uwsgi --with-debug --with-pcre-jit --with-ipv6 --with-http_ssl_module --with-http_stub_status_module --with-http_realip_module --with-http_auth_request_module --with-http_addition_module --with-http_dav_module --with-http_geoip_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_v2_module --with-http_sub_module --with-http_xslt_module --with-stream --with-stream_ssl_module --with-mail --with-mail_ssl_module --with-threads --add-module=../nginx-rtmp-module-master
1 sudo ./configure --prefix=/usr/share/nginx --conf-path=/etc/nginx/nginx.conf --http-log-path=/var/log/nginx/access.log --error-log-path=/var/log/nginx/error.log --lock-path=/var/lock/nginx.lock --pid-path=/run/nginx.pid --http-client-body-temp-path=/var/lib/nginx/body --http-fastcgi-temp-path=/var/lib/nginx/fastcgi --http-proxy-temp-path=/var/lib/nginx/proxy --http-scgi-temp-path=/var/lib/nginx/scgi --http-uwsgi-temp-path=/var/lib/nginx/uwsgi --with-debug --with-pcre-jit --with-ipv6 --with-http_ssl_module --with-http_stub_status_module --with-http_realip_module --with-http_auth_request_module --with-http_addition_module --with-http_dav_module --with-http_geoip_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_v2_module --with-http_sub_module --with-http_xslt_module --with-stream --with-stream_ssl_module --with-mail --with-mail_ssl_module --with-threads --add-module=../nginx-rtmp-module-master

实施完上面包车型客车步骤,应该会扭转贰个modules文件夹,里面就有大家想要的extension。

  注意,这一行命令其实是如此组合的: sudo ./configure
<原来的布局音讯>
–add-module=../nginx-rtmp-module-master.那样就将nginx-rtmp-module添加到nginx配置内部了,同时将事先封存的nginx配置音讯添加到了用来本次编写翻译的配备音讯里面,尽可能地保障了编写翻译出来的nginx与原先的nginx成效一致.缜密的同学会发现,其实本人在铺排nginx音信的时候并不曾将原来有所的布局音讯都写进去,原因是壹旦整个复制粘贴过去,在编译的时候会并发1些不太好处理的荒唐,那么些错误暂且半会儿还没找到好的消除方案,所以就减弱了部分安排新闻,缩减之后在作用模块上并无太大差别,所以可放心使用.

  注意,这一行命令其实是如此组合的: sudo ./configure
<原来的布局消息>
–add-module=../nginx-rtmp-module-master.那样就将nginx-rtmp-module添加到nginx配置内部了,同时将事先封存的nginx配置音讯添加到了用来这次编译的配备消息里面,尽或许地保障了编写翻译出来的nginx与原先的nginx成效一致.缜密的同学会发现,其实自个儿在安顿nginx消息的时候并不曾将原来有所的铺排新闻都写进去,原因是一旦全勤复制粘贴过去,在编写翻译的时候会油不过生部分不太好处理的错误,这一个不当如今半会儿还没找到好的缓解方案,所以就收缩了部分安排音信,缩减之后在功用模块上并无太大差距,所以可放心使用.

编译pdo_oci

  10.配置达成之后,执行make命令开端编译nginx源码.编写翻译完结现在,会在nginx源码目录的objs目录下生成nginx可实施文件.

  十.安插达成之后,执行make命令初阶编写翻译nginx源码.编写翻译达成以往,会在nginx源码目录的objs目录下生成nginx可实行理文件件.

手续和编写翻译oci8是同1的,不过configure参数不平等,所以仍旧写一下。

1 sudo make
1 sudo make
cd ../../ext/pdo_oci
phpize
# 最后面要指定版本号
./configure --with-pdo-oci=instantclient,/opt/oracle/instantclient_12_1,12.1
sudo make

  11.将扭转的nginx可执行文件拷贝到/usr/sbin目录下,替换原来的nginx共享库文件.
注意:
原来/usr/sbin目录有三个nginx共享库文件,我们选择编写翻译出来的nginx可执行文件对其开始展览替换.

  1一.将转移的nginx可执行文件拷贝到/usr/sbin目录下,替换原来的nginx共享库文件.
注意:
原来/usr/sbin目录有2个nginx共享库文件,大家选拔编写翻译出来的nginx可执行文件对其开始展览替换.

结果也和方面1样。

1 sudo nginx /usr/sbin
1 sudo nginx /usr/sbin

采纳大家编译的壮大

  12.重启nginx.

  12.重启nginx.

率先我们要清楚现行反革命PHP的ext目录在哪里

1 sudo service nginx restart
1 sudo service nginx restart
php -i | grep "extension_dir"

  一三.再一次查看nginx配置消息.

  壹三.重复翻开nginx配置消息.

本人那边展现的是extension_dir => /usr/lib/php/20151012 => /usr/lib/php/20151012,那么我们先把大家编写翻译的扩展复制到/usr/lib/php/20151012

1 nginx -V
1 nginx -V
# 先进入对应的modules目录下
cp oci8.so /usr/lib/php/20151012
cp pdo_oci.so /usr/lib/php/20151012

  能够看出nginx-rtmp-module模块已经添加到了nginx里面.

  能够看看nginx-rtmp-module模块已经添加到了nginx里面.

接下来大家还要在php.ini中添加相关陈设项,首先也要通晓php.ini的地方

1 --prefix=/usr/share/nginx --conf-path=/etc/nginx/nginx.conf --http-log-path=/var/log/nginx/access.log --error-log-path=/var/log/nginx/error.log --lock-path=/var/lock/nginx.lock --pid-path=/run/nginx.pid --http-client-body-temp-path=/var/lib/nginx/body --http-fastcgi-temp-path=/var/lib/nginx/fastcgi --http-proxy-temp-path=/var/lib/nginx/proxy --http-scgi-temp-path=/var/lib/nginx/scgi --http-uwsgi-temp-path=/var/lib/nginx/uwsgi --with-debug --with-pcre-jit --with-ipv6 --with-http_ssl_module --with-http_stub_status_module --with-http_realip_module --with-http_auth_request_module --with-http_addition_module --with-http_dav_module --with-http_geoip_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_v2_module --with-http_sub_module --with-http_xslt_module --with-stream --with-stream_ssl_module --with-mail --with-mail_ssl_module --with-threads --add-module=../nginx-rtmp-module-master
1 --prefix=/usr/share/nginx --conf-path=/etc/nginx/nginx.conf --http-log-path=/var/log/nginx/access.log --error-log-path=/var/log/nginx/error.log --lock-path=/var/lock/nginx.lock --pid-path=/run/nginx.pid --http-client-body-temp-path=/var/lib/nginx/body --http-fastcgi-temp-path=/var/lib/nginx/fastcgi --http-proxy-temp-path=/var/lib/nginx/proxy --http-scgi-temp-path=/var/lib/nginx/scgi --http-uwsgi-temp-path=/var/lib/nginx/uwsgi --with-debug --with-pcre-jit --with-ipv6 --with-http_ssl_module --with-http_stub_status_module --with-http_realip_module --with-http_auth_request_module --with-http_addition_module --with-http_dav_module --with-http_geoip_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_v2_module --with-http_sub_module --with-http_xslt_module --with-stream --with-stream_ssl_module --with-mail --with-mail_ssl_module --with-threads --add-module=../nginx-rtmp-module-master
p -i | grep "Configuration File"

  试了试推流拉流,功用符合规律,再运维了弹指间原来的WEB工程,也符合规律!

  试了试推流拉流,功能正常,再运维了须臾间原来的WEB工程,也平常!

打字与印刷出了如下音讯

  最终,小编说澳优下为什么要先通过apt-get的点子安装nginx,再开始展览编写翻译替换.原因是为了方便在LUMP环境下陈设WEB工程.假如不先通过apt-get的章程安装nginx,而是径直下载源码编译安装,则nginx的安排目录会不齐全,很难去安排WEB项目(大概通过某个操作也能落到实处安排,然而现实怎么操作依旧要花时间去斟酌nginx的).假若不搭建流媒体服务,小编提议都经过apt-get的法子安装nginx,步骤省略又省事!

  最后,笔者表明壹(Wissu)下怎么要先经过apt-get的方法安装nginx,再实行编写翻译替换.原因是为着便利在LUMP环境下陈设WEB工程.假设不先通过apt-get的办法安装nginx,而是一向下载源码编写翻译安装,则nginx的配置目录会不完备,很难去计划WEB项目(可能通过一些操作也能兑现布署,不过具体怎么操作依旧要花时间去切磋nginx的).假如不搭建流媒体服务,小编提议都通过apt-get的格局安装nginx,步骤省略又便捷!

Configuration File (php.ini) Path => /etc/php/7.0/cli
Loaded Configuration File => /etc/php/7.0/cli/php.ini

 

 

那般大家就领悟了php.ini的岗位,可是那些是CLI(命令行接口)的布局文件,大家要求选择Apache的(CGI)。大家到目录/etc/php/7.0/下发现还有1个名字为apache二的目录,里面也有php.ini文件,那么大家编辑apache二目录下的php.ini

sudo vim php.ini

在里边到场

extension=oci8.so
extension=pdo_oci.so

提起底重启Apache

systemctl restart apache2.service

查阅一下phpinfo()发现OCI和PDO_OCI均已设置。到此处设置已经整整成就了。

Linux小技巧

在装置和查资料的进程中窥见了一下很实用的一声令下,也把它们记录下来。

# 重启某个服务
sudo systemctl restart apache2.service
# 查看某个服务的状态
sudo systemctl status apache2.service
# 查看php相关的模块(其他的类似)
apt-cache search php- | less
# 具体查看某个模块的详细信息
apt-cache show package_name

总结

如上正是那篇小说的全体内容了,希望本文的始末对我们的求学只怕工作能带动一定的帮助,要是有疑问大家能够留言沟通,多谢我们对剧本之家的支撑。

你或者感兴趣的篇章:

  • #实行笔记#Ubuntu配置Apache+PHP+MySQL
  • 在Linux(Ubuntu)下搭建PHP环境的操作步骤
  • Ubuntu中搭建Nginx、PHP环境最简单易行的办法
  • ubuntu上安顿Nginx+PHP5法斯特CGI服务器配置
  • Ubuntu linux 安装
    PHP5.3.0的命令
  • 基于ubuntu下nginx+php+mysql安装配置的具体操作步骤
  • 在Ubuntu 14.04上部署 PHP 环境及
    WordPress
  • ubuntu下配置nginx+php+mysql详解
  • Ubuntu中扶助PHP伍与PHP7双版本的粗略达成

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图
Copyright @ 2010-2019 美高梅手机版4858 版权所有