nginx服务器搭建
1.nginx简介
Nginx (“engine x”) 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器,在高连接并发的情况下Nginx 是 Apache 服务器不错的替代品.其特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好.目前中国大陆使用nginx网站用户有:新浪、网易、 腾讯,另外知名的微网志Plurk也使用nginx。
Nginx 作为 负载均衡 服务器:
Nginx 既可以在内部直接支持 Rails 和 PHP 程序对外进行服务,也可以支持作为 HTTP 代理服务器对外进行服务。 Nginx 采用 C 进行编写, 不论是系统资源开销还是 CPU 使用效率都比 Perlbal 要好很多。作为邮件代理服务器:
Nginx 同时也是一个非常优秀的邮件代理服务器(最早开发这个产品的目的之一也是作为邮件代理服务器), Last.fm 描述了成功并且美妙的使用经验。Nginx 是一个安装非常简单,配置文件非常简洁(还能够支持perl语法), Bugs非常少的服务器: Nginx 启动特别容易,并且几乎可以做到 7*24 不间断运行,即使运行数个月也不需要重新启动。 你还能够不间断服务的情况下进行软件版本的升级。
2.下载安装包和模块库
1)下载openssl-fips-2.0.16.tar.gz 下载地址为https://www.openssl.org/source/ openssl库
2)下载zlib-1.2.11.tar.gz 下载地址为http://www.zlib.net/, gzip 模块
3) 下载pcre-8.41.tar.gz 下载地址为https://ftp.pcre.org/pub/pcre/, 该文件为正则表达式库。让nginx支持rewrite需要安装这个库。
4)下载nginx-1.13.8.tar.gz 下载地址为http://nginx.org/download/nginx-1.13.8.tar.gz, 该文件为nginx的linux版本安装文件。
模块依赖性Nginx需要依赖上边三个包 , 依赖包安装顺序依次为:openssl、zlib、pcre, 然后安装Nginx包.
3.安装模块库和Nginx
安装包和模块库全部放在目录 /usr/local/ 下
1)安装pcre
解压安装包: tar zxvf pcre-8.41.tar.gz
进入安装包目录: cd pcre-8.41
编译安装 : ./configure
make && make install
查看pcre版本: pcre-config –version
如下,表示pcre安装成功
2)安装nginx
解压安装包: tar zxvf nginx-1.13.8.tar.gz
进入安装包目录: cd nginx-1.13.8
编译安装:
./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-pcre=/usr/local/pcre-8.41
./configure之后的结果为:
Configuration summary
+ using PCRE library: /usr/local/pcre-8.41
+ using system OpenSSL library
+ using system zlib library
nginx path prefix: "/usr/local/nginx"
nginx binary file: "/usr/local/nginx/sbin/nginx"
nginx modules path: "/usr/local/nginx/modules"
nginx configuration prefix: "/usr/local/nginx/conf"
nginx configuration file: "/usr/local/nginx/conf/nginx.conf"
nginx pid file: "/usr/local/nginx/logs/nginx.pid"
nginx error log file: "/usr/local/nginx/logs/error.log"
nginx http access log file: "/usr/local/nginx/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
然后 make 然后make install
查看nginx版本: /usr/local/nginx/sbin/nginx -v
结果如下,则表示安装成功:
到此,nginx安装完成。
4.Nginx配置
进入到nginx安装目录, 启动nginx服务, 无法开启, 提示错误如下 :80端口被占用。
[root@iZwz98b01mzud1ytnw5g22Z nginx-1.13.8]# cd ..
[root@iZwz98b01mzud1ytnw5g22Z local]# cd nginx
[root@iZwz98b01mzud1ytnw5g22Z nginx]# /usr/local/nginx/sbin/nginx
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind