Linux(Centos)之安装Nginx及注意事项

2017-01-12 09:53:12来源:oschina作者:寻知者人点击

第七城市

Linux(Centos)之安装Nginx及注意事项

阅读目录

1.Nginx的简单说明
2.准备工作
3.安装SSL功能需要openssl库以及gzip模块需要的zlib库
4.安装rewrite模块需要pcre库
5.安装 Nginx服务
6.监测Nginx是否安装成功
7.将Nginx设置为开机自动启动
8.使用server命令启动nginx服务

回到顶部


1.Nginx的简单说明

  a. Nginx是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器,期初开发的目的就是为了代理电子邮件服务器室友:Igor Sysoev开发,源代码符合BSD开源。其特点就是占用内存少并发能力强,在天朝使用Nginx的大型网站已经有很多:百度、淘宝、腾讯等等...。


  b.Nginx作为Http服务器,有以下几项基本特征:


    b.1 处理静态文件,索引文件以及自动索引,打开文件描述符缓冲。


    b.2 无缓存的反向代理加速,简单的负载均衡和容错


    b.3 模块化的结构,包括gzipping,byte ranges,chunked responses以及SSI-filter等filter,如果由FastCGI或其它代理服务器处理蛋液中存在的多个SSI,则这项处理可以并行运行,而不需要相互等待。


    b.4 支持SSL和TLSSNI。


  c.Nginx官网:http://nginx.org/


  d.Nginx推荐学习网址:http://dreamfire.blog.51cto.com/418026/1140965


回到顶部


2.准备工作

  a.上面简单介绍了一下Nginx,大家如果想要了解更多关于Nginx的知识,请自行通过网络学习。


  b.工欲善其事必先利其器,下面我们就在Linux下面简单安装一下Niginx,在安装过程中需要了一些问题,同步都会在博客中说出来。


  c.Nginx的安装依赖于以下三个包,意思就是在安装Nginx之前首先必须安装一下的三个包,安装顺序为我写的顺序:


    c.1 SSL功能需要openssl库,下载地址:http://www.openssl.org/


    c.2 gzip模块需要zlib库,下载地址:http://www.zlib.net/


    c.3 rewrite模块需要pcre库,下载地址:http://www.pcre.org/


  d.Nginx的安装包:下载地址为:http://nginx.org/en/download.html


  e.将上面下载的几个软件全部使用Xftp上传到Linux系统中,上传路径和软件如图所示:


    


  f.操作需要的软件以及系统如下:虚拟机(Vmware),虚拟机中安装的Centos系统,Xshell,Xftp,以及上面的几个包。


  g.下面开始按照上面说的按照顺序开始安装软件。


回到顶部


3.安装SSL功能需要openssl库以及gzip模块需要的zlib库

  a(1).首先我们安装SSL功能需要的openssl库插件,注意:安装过程是按照我在linux下设置的文件路径来安装的,命令如下:


    a.1tar -zxvf soft/openssl-SNAP-20160104


    a.2cdcd openssl-SNAP-20160104/


    a.3 ./config


    a.4make


    a.5make install


  b(1).安装gzip模块需要zlib库的安装方法和openssl安装的方法一模一样,也是分为上面五个步骤,只不过是文件的名称不一样,命令简单如下:


    b.1tar -zxvf soft/openssl-SNAP-20160104


    b.2cd openssl-SNAP-20160104/


    b.3 ./configure


    b.4make


    b.5make install


  b.如果没有报错,则说明安装完全完成了~。


回到顶部


4.安装rewrite模块需要pcre库

  a.安装rewrite模块需要pcre库的安装方法和openssl安装的方法一模一样,也是分为上面五个步骤,只不过是文件的名称不一样,命令简单如下:


    a.1 tar -zxvf soft/pcre-8.38.tar.gz


    a.2 cd pcre-8.38/


    a.3 ./configure


    a.4make


    a.5make install


  b.在执行./configure的出现错误了,导致不能继续往下执行,报错内容为:


    error: You need a C++ compiler for C++ support,看到这句话我们就已经猜到了应该是c++包信息,而linux中没有,那么首先安装一下这个包信息即可,安装命令为:


    b.1 yum install -y gcc gcc-c++


  c.当安装完上面的c++包之后,在此运行,发现消息已经显示安装成功了,当基于上面的东西全部安装完成之后,就需要安装Nginx服务了。


回到顶部


5.安装 Nginx服务

  a.安装rewrite模块需要pcre库的安装方法和openssl安装的方法一模一样,也是分为上面五个步骤,只不过是文件的名称不一样,命令简单如下:


    a.1 tar -zxvf soft/nginx-1.9.9.tar.gz


    a.2 cd nginx-1.9.9/


    a.3./configure --with-pcre=../pcre-8.38/ --with-zlib=../zlib-1.2.8/ --with-openssl=../openssl-SNAP-20160104/


    a.4make


    a.5make install


  b.在执行./configure的出现错误了,导致不能继续往下执行,报错内容为:


    error: You need a C++ compiler for C++ support,看到这句话我们就已经猜到了应该是c++包信息,而linux中没有,那么首先安装一下这个包信息即可,安装命令为:


    b.1 yum install -y gcc gcc-c++


  c.当安装完上面的c++包之后,在此运行,发现消息已经显示安装成功了。博文到这里如果安装的时候没有遇到错误的话说明已经安装成功了,下面我们就是测试Nginx是否安装成功。


回到顶部


6.监测Nginx是否安装成功

  a.当上面的所有步骤完成之后,则说明Nginx安装已经完成,那么我们如何来确定是否安装成功了呢?通过以下命令来确定即可。


    a.1 cd /usr/local/nginx/sbin/


    a.2 ./nginx -t


  b. 当我执行第二个命令(./nginx -t)的时候出错了,报没有权限的错误。如图所示:


    


    备注:根据错误提示,我们就能够看出来,是说/usr/local/nginx下没有权限,解决办法也很简单,我们给文件赋值权限。


  c.如下图所示,配置权限(配置权限需要切换到root用户下)之后,执行上面两个步骤,如果linux中如下图所示:则说明安装已成功。


    


  d.当确认安装完成之后,首先就需要启动和查看Nginx默认安装的端口是多少,两个命令分别如下:


    (1) ./nginx


    (2) netstat -ntlp , Nginx默认端口为80


  e.开放80端口,让其外部环境可以访问(如果不开放80端口,外部环境访问不了),命令以及截图如下:


    vim /etc/sysconfig/iptables


    备注:这里我使用vim更改防火强信息之后,在重新启动防火墙的时候出现了错误,错误信息为:Try `iptables-restore -h' or 'iptables-restore --help' for more information,这个错误信息提示我们不能重新启动防火墙,那怎么办呢?测试了一下已写命令的方式去更改,发现更改成功了,如图所示:


      


  f.当上面的工作完成之后,我们在外部浏览器中浏览:http://IP,出现如图所示,则说明安装已完全完成。


    

回到顶部


7.将Nginx设置为开机自动启动

  a.当上面6步完成之后,说明安装已经完全成功了,但是每次开机我们面临的一个问题,就是每次都要执行命令(1: cd /usr/local/nginx/sbin/2:./nginx -t),那么这时候有这个需要,设置开机自启动,开机自动启动的命令为:将Nginx的启动命令添加到/etc/rc.local,命令如下:


    echo "/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf" >> /etc/rc.local


  b.然后将Linux关机重启测试一下,如果http://IP还能够访问,则说明配置成功了,我这边已测试,配置完全成功。

回到顶部


8.使用server命令启动nginx服务

  a. 现在觉得启动命令太麻烦,虽然开机可以自启动,但是每次改动要重新启动nginx的话,要么输入命令,要么开机,都还不是很好,那么我们能不能创造一个更好的方式呢?当然可以,我们可以通过设置System V脚本。


  b.脚本代码如下所示:


server命令的代码


  c.创建命令如下,手先跳转到/etc/init.d下创建nginx启动脚本文件,命令如下;


    c.1cd /etc/init.d/


    c.2vim nginx 创建一个新的nginx文件,将上面的命令代码copy到里面,然后保存


  d.修改脚本权限,命令如下:chmod 755 nginx


  e.将脚本文件加入到chkconfig中chkconfig --add nginx

  f.设置nginx开机在3和5级别自动启动 chkconfig --level 35 nginx on


  g.测试nginx脚本文件是否能够正常使用,命令如下,我均已测试,全部可以使用。


    g.1 /etc/init.d/nginx restart


    g.2 /etc/init.d/nginx reload


    g.3 /etc/init.d/nginxstop

第七城市

最新文章

123

最新摄影

微信扫一扫

第七城市微信公众平台