Nginx入门

作者: 梦中一点心雨 | 来源:发表于2018-12-18 14:23 被阅读20次

    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服务器的安装

    windowns版Nginx下载地址:http://nginx.org/en/docs/windows.html

    windows上安装Nginx比较简单,Nginx官方已经提供了打包好的.exe的运行文件,不需要用户自己去编译运行。直接打开上面的地址,下载好windows版的nginx,解压后双击nginx.exe或者在命令窗口运行nginx.exe即可。

    因为Nginx默认端口是80端口,所以启动成功之后在浏览器地址栏输入localhost就可以看到Nginx的欢迎页面。

    linux版的Nginx下载地址:http://nginx.org/

    下载nginx之前,请确保自己的linux系统已经安装了g++,gcc。因为nginx是纯C语言编写,在linux下安装时需要去编译源码安装。

    • 解压Nginx源码包

      > tar -zxvf nginx-1.11.5.tar.gz
      
    • 设置一下nginx配置信息

      > chmod -R 755 nginx-1.11.5
      > cd nginx-1.11.5
      > ./configure --prefix=/usr/local/nginx  #此处设置prefix,是设置nginx的安装路径,可通过./configure --help查看其它参数项
      
    • 编译安装

      > make | make install #将源码文件编译成可执行文件和各种库文件,并将其复制到上面设置的安装目录中
      
    • 编译安装中的常见问题

    缺少Nginx组件

    $ wget http://www.openssl.org/source/openssl-fips-2.0.10.tar.gz
    $ tar zxvf openssl-fips-2.0.10.tar.gz
    $ cd openssl-fips-2.0.10
    $ ./config && make && make install
    
    $ wget http://zlib.net/zlib-1.2.11.tar.gz
    $ tar zxvf zlib-1.2.11.tar.gz
    $ cd zlib-1.2.11
    $ ./configure && make && make install
    
    $ wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.40.tar.gz
    $ tar zxvf pcre-8.40.tar.gz
    $ cd pcre-8.40
    $ ./configure && make && make install
    

    缺少g++环境

    $ yum install gcc-c++
    

    报错了,error while loading shared libraries: libpcre.so.1: cannot open shared object file: No such file or directory

    $ whereis libpcre.so.1
    $ ln -s /usr/local/lib/libpcre.so.1 /lib64
    
    • 启动nginx

      #这一步可以不指定nginx配置文件(nginx.conf文件在默认目录下时可不指定)
      > /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
      
    • 还有最重要的一步,打开Nginx的防火墙端口

      > vi /etc/sysconfig/iptables
      > 添加端口,如: -A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
      > /etc/init.d/iptables restart #重启防火墙,让修改生效
      
    • 在自己本机的浏览器中输入localhost就可以看到Nginx的欢迎页面。

    Nginx其他常用命令参数

    • 校验配置文件
    > nginx -t
    
    • 重启
    > nginx -s reload
    
    • 安全停止
    > nginx -s quit
    

    其他参数可使用'man nginx'命令查看,就不一一列举了。

    : Nginx停止也可以通过杀死Nginx进程的方式停止,Nginx默认会启动两个进程,master和worker,直接杀死进程时需要kill这两个进程。
    master和worker的区别在以后的文章中再做说明。

    相关文章

      网友评论

        本文标题:Nginx入门

        本文链接:https://www.haomeiwen.com/subject/qnflkqtx.html