设为首页 收藏本站
查看: 711|回复: 0

[经验分享] Nginx安装部署

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2016-12-12 08:41:58 | 显示全部楼层 |阅读模式
一、Nginx介绍
   Nginx ("engine x") 是一个高性能的HTTP反向代理服务器,也是一个IMAP/POP3/SMTP服务器。Nginx是由Igor Sysoev为俄罗斯访问量第二的Rambler.ru站点开发的,第一个公开版本0.1.0发布于2004年10月4日。其将源代码以类BSD许可证的形式发布,因它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名。2011年6月1日,nginx 1.0.4发布。
Nginx是一款轻量级Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like 协议下发行。由俄罗斯的程序设计师Igor Sysoev所开发,供俄国大型的入口网站及搜索引擎Rambler(俄文:Рамблер)使用。其特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好,中国大陆使用nginx网站用户有:百度、京东新浪网易腾讯淘宝等。

二、Nginx的安装方式的对比:
1、rpm -ivh 包名.rpm
有依赖问题,安装A,A需要先安装B
缺点:不能定制。
2、yum安装解决rpm安装的依赖问题,安装更简单。
优点:简单、易用、高效
缺点:不能定制。
3、编译(C语言源码---编译二进制等)
./configure(配置),make(编译),make install (安装)。
优点:可以定制。
缺点:复杂、效低。
4、定制化制作rpm包,搭建yum仓库,把我定制的rpm包放到yum仓库,进行yum安装。
优点:结合了2的优点和3的优点。
缺点:复杂。


三、编译方式安装Nginx
3.1安装之前确认一下相关依赖包
openssl openssl-devel pcre pcre-devel

[iyunv@web02 nginx-1.6.3]# rpm -qa openssl openssl-devel pcre pcre-devel
pcre-7.8-7.el6.x86_64
pcre-devel-7.8-7.el6.x86_64
openssl-devel-1.0.1e-48.el6_8.3.x86_64
openssl-1.0.1e-48.el6_8.3.x86_64
有以上结果返回代表已经安装了相关依赖包,如果没有安装就使用以下命令进行安装。
3.2安装依赖包
[iyunv@web02 yum.repos.d]# yum install pcre pcre-devel -y

[iyunv@web02 yum.repos.d]# yum install openssl openssl-devel -y

[iyunv@web02 nginx-1.6.3]# rpm -qa openssl openssl-devel pcre pcre-devel #<==检查一下。
3.3创建用户及相关目录
[iyunv@web02 ~]# mkdir /home/oldboy/tools/ -p   #<====用于存放软件的目录
[iyunv@web02 ~]# useradd -s /sbin/nologin/ -M www  #<=====创建给nginx服务用的虚拟用户
[iyunv@web02 ~]# cd /home/oldboy/tools/
[iyunv@web02 tools]# wget -q http://nginx.org/download/nginx-1.6.3.tar.gz
[iyunv@web02 tools]# ls
nginx-1.6.3.tar.gz
[iyunv@web02 tools]# tar xf nginx-1.6.3.tar.gz
[iyunv@web02 tools]# ls
nginx-1.6.3  nginx-1.6.3.tar.gz
[iyunv@web02 tools]# cd nginx-1.6.3
[iyunv@web02 nginx-1.6.3]# ./configure --user=www --group=www --prefix=/application/nginx-1.6.3/ --with-http_ssl_module --with-http_stub_status_module
checking for OS
+ Linux 2.6.32-573.el6.x86_64 x86_64
checking for C compiler ... found
+ using GNU C compiler
+ gcc version: 4.4.7 20120313 (Red Hat 4.4.7-16) (GCC)
checking for gcc -pipe switch ... found
checking for gcc builtin atomic operations ... found
............                       #<===C源文件检查编译,太多文件这里省略一部分
creating objs/Makefile

Configuration summary
  + using system PCRE library
  + using system OpenSSL library
  + md5: using OpenSSL library
  + sha1: using OpenSSL library
  + using system zlib library

  nginx path prefix: "/application/nginx-1.6.3/"
  nginx binary file: "/application/nginx-1.6.3//sbin/nginx"
  nginx configuration prefix: "/application/nginx-1.6.3//conf"
  nginx configuration file: "/application/nginx-1.6.3//conf/nginx.conf"
  nginx pid file: "/application/nginx-1.6.3//logs/nginx.pid"
  nginx error log file: "/application/nginx-1.6.3//logs/error.log"
  nginx http access log file: "/application/nginx-1.6.3//logs/access.log"
  nginx http client request body temporary files: "client_body_temp"
  nginx http proxy temporary files: "proxy_temp"
  nginx http fastcgi temporary files: "fastcgi_temp"
  nginx http uwsgi temporary files: "uwsgi_temp"
  nginx http scgi temporary files: "scgi_temp"
###出现了标黄色的部分提示,没有相关报错,证明编译成功。
[iyunv@web02 nginx-1.6.3]# make
[iyunv@web02 nginx-1.6.3]# make install
[iyunv@web02 nginx-1.6.3]# ls      #<===编译前的文件情况      
auto  CHANGES  CHANGES.ru  conf  configure  contrib  html  LICENSE  Makefile  man  objs  README  src
[iyunv@web02 nginx-1.6.3]# ls
conf  html  logs  sbin             #<===编译后的文件情况   
[iyunv@web02 nginx-1.6.3]# ln -s /application/nginx-1.6.3/ /application/nginx   #创建软链接
[iyunv@web02 nginx-1.6.3]# ls -l /application/nginx/
总用量 16
drwxr-xr-x 2 root root 4096 12月 11 10:44 conf
drwxr-xr-x 2 root root 4096 12月 11 10:44 html
drwxr-xr-x 2 root root 4096 12月 11 10:44 logs
drwxr-xr-x 2 root root 4096 12月 11 10:44 sbin
到此软件编译安装完成。
四、启动Nginx服务
[iyunv@web02 nginx-1.6.3]# /application/nginx/sbin/nginx
[iyunv@web02 nginx-1.6.3]# lsof -i :80
COMMAND   PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
nginx   11067 root    6u  IPv4  22775      0t0  TCP *:http (LISTEN)
nginx   11068  www    6u  IPv4  22775      0t0  TCP *:http (LISTEN)

经验小结:
ln -s /application/nginx-1.6.3/ /application/nginx
软连接妙用:这条命令可是生产环境的经验。
1)将nginx安装的路径通过软链接的方式更改为/application/nginx/ 方便人员使用。
2)安装时指定版本号路径是为了便于查看区分当前使用的Nginx版本,也方便以后升级。
3)内部人员使用路径/application/nginx/
4)当nginx软件升级编译成带新版本号和版本后,删除原来的软链接,再重新建立尊重的到/application/nginx/的软链接就好。即版本升级,重新创建软链接的路径不变还是/application/nginx/
5)程序中如果有引用nginx路径的地方,不需要做任何更改,因为升级后访问路径还是/application/nginx/





运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-312987-1-1.html 上篇帖子: 线上nginx访问日志切割脚本 下篇帖子: Nginx服务器搭建和基本配置详解
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表