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

[经验分享] Nginx服务及编译安装

[复制链接]

尚未签到

发表于 2017-11-17 10:57:33 | 显示全部楼层 |阅读模式
第1章 Nginx

1.1 nginx的概念
  Nginx("engine x")是一个开源的、支持高性能、高并发的WWW服务和代理服务软件,具有高开发(特别是静态资源),占用系统资源少等特性。
  Nginx可以运行在Unix、Linux、BSD、Mac OSX、Solaris,以及Microsoft Windows等操作系统中,随着Nginx在国内很多大型网站的稳定高效运行,近两年也逐渐被越来越多的中小型网站所使用,当前流行的Nginx Web组合被称为LNMP或LEMP(即Linux+Nginx+MySQL+PHP)
  http://oldboy.blog.51cto.com/2561410/775056
  https://www.unixhot.com/page/ops
  https://www.unixhot.com/page/cache

1.2 Nginx的重要特性及应用场合

1.2.1 ***Nginx的重要特性
  01. 支持高并发:能支持几万并发连接(特别是静态小文件业务环境)
  02. 资源消耗少:在3万的并发连接下,开启10个Nginx线程消耗的内存不到200MB
  03. 可以做HTTP反向代理及加速缓存,即负载均衡功能[OSI 4-7层]
  内置对RS节点服务器健康检查功能,相当于专业的Haproxy软件或LVS[4层]功能
  04. 具备Squid等数据缓存软件等的缓存功能(mencache/redis)
  05. 支持异步网络I/O事业模型epoll(Linux 2.6+)

1.3 Nginx软件的主要企业功能应用
  01.作为web服务支持网站页面请求处理功能
  02.支持反向代理或负载均衡功能
  03.前端业务数据缓存服务(扩展)

第2章 编译安装Nginx
  服务端配置:

2.1 ①检查软件的安装环境



  cat /etc/redhat-release #查看软件系统环境   uname -r

2.2 ②安装nginx的依赖包





yum install -y pcre-devel openssl-devel

rpm -qa pcre pcre-devel openssl openssl-devel   #yum安装操作后检查安装结果
  扩展:
  pcre:兼容perl兼容正则表达式,perl compatible regular expressions
  rewirte模块 参数信息(perl方式定义正则表达式)
  openssl:ssh---openssh/openssl---https

2.3 ③下载nginx软件

2.3.1 配置阿里云yum源









01.备份
mv/etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup

02.下载新的CentOS-Base.repo 到/etc/yum.repos.d/
# CentOS 6:
wget-O /etc/yum.repos.d/CentOS-Base.repo
# CentOS 7:
wget-O /etc/yum.repos.d/CentOS-Base.repo
   
03.之后运行yummakecache生成缓存

2.3.2 添加Epel源







01.备份(如有配置其他epel源)
mv/etc/yum.repos.d/epel.repo /etc/yum.repos.d/epel.repo.backup
mv/etc/yum.repos.d/epel-testing.repo /etc/yum.repos.d/epel-testing.repo.backup
   
02.下载新repo 到/etc/yum.repos.d/
# epel(RHEL 7):
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
# epel(RHEL 6):
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-6.repo

2.3.3 放在统一目录下并进行安装





  -p /server/tools

cd /server/tools

wget http://nginx.org/download/nginx-1.10.2.tar.gz
  说明:更多的Nginx版本详见http://nginx.org/选择安装Stable version(稳定版本)

2.3.4 解压nginx软件包



  tar xf nginx-1.10.2.tar.gz

2.3.5 创建虚拟用户www管理nginx



  useradd www -s /sbin/nologin -M   id www

2.4 ④编译安装软件步骤
  配置[.configure]-->做菜[编译make]-->上菜[安装make stall])

2.4.1 配置软件(默认安装在/usr/local)





mkdir -p /server/tools/nginx-1.10.2
cd /server/tools/nginx-1.10.2
./configure --prefix=/application/nginx-1.10.2 --user=www --group=www --with-http_stub_status_module  --with-http_ssl_module   #启动相应模块
  说明:--prefix:表示指定软件安装到哪个目录中,指定目录不存在会自动创建
  --user/--group:表示nginx工作进程利用哪个用户/用户组运行管理
  --with-http_stub_status_module:启动nginx状态模块功能(用户访问nginx的网络信息)
  --with-http_ssl_module:启动https功能模块



  echo $?
  说明:软件编译过程中,利用返回值判断操作是否正确

2.4.1.1  指定的参数及简单说明
  编译Nginx软件时,可以使用./configure --help查看相关参数帮助



--prefix=PATH                     #<---设置安装路径
--user=USER                       #<---进程用户权限
--group=GROUP                     #<---进程用户组权限
--with-http_stub_status_module    #<---激活状态信息
--with-http_ssl_module            #<---激活ssl功能
2.4.2 编译安装软件(顺序颠倒会报错)



  make #编译软件--转换成二进制软件包使计算机能够识别   make install #编译安装

2.4.3 创建目录的软链接



  cd /application/   ln -s /application/nginx-1.10.2/ /application/nginx
  作用:将Nginx安装路径通过软连接的方式更改为/application/nginx,便于程序代码调用nginx程序时无需跟随版本名称重置。

2.4.4 启动nginx程序进程



  /application/nginx/sbin/nginx

2.4.5 检查服务进程端口信息





ps -ef |grep nginx

root      4142     1  0 21:32 ?        00:00:00 nginx: master process /application/nginx/sbin/nginx   #主进程
www       4143  4142  0 21:32 ?       00:00:00 nginx: worker process   #处理用户请求
  客户端进行测试:

2.4.6 检查Nginx启动的实际效果
  在Windows下通过浏览器检测的方式如下:



打开浏览器输入:http://10.0.0.8/ (10.0.0.8为安装Nginx服务器的IP地址)→回车
  说明:这里不能使用域名访问,如果想通过域名访问,需要修改本地hosts文件(不能使用自带IE浏览器)
  在linux下通过浏览器检测的方式如下:





[iyunv@web01 ~]# wget 127.0.0.1
--2017-01-15 17:35:35--  http://127.0.0.1/
正在连接 127.0.0.1:80... 已连接。
已发出 HTTP 请求,正在等待回应... 200 OK
长度:612 [text/html]
正在保存至: “index.html”

100%[================================================================================>] 612         --.-K/s   in 0s
  
2017-01-15 17:35:35 (120 MB/s) - 已保存 “index.html” [612/612])
  说明:广大读者请注意,执行上述操作需关闭iptables防火墙及selinux

运维网声明 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-407862-1-1.html 上篇帖子: MySQL PXC集群部署 下篇帖子: 新服务器上装java PHP环境有什么一键安装的方便的方法?一般都是怎么安装环境的?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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