Nginx Linux安装与部署
nginx (engine x) 是一个高性能的http和反向代理服务,也是一款轻量级的web 服务器/反向代理服务器及电子邮件(imap/pop3)代理服务器,并在一个bsd-like 协议下发行。其特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好,在高连接并发的情况下,nginx是apache服务器不错的替代品,同时占用的资源很少,并兼容unix,linux,windows平台。*使用nginx网站用户有:百度、京东、新浪、网易、腾讯、淘宝等。
系统环境:cat /etc/redhat-release
1.安装编译工具及库文件
yum -y install make zlib zlib-devel gcc-c++ libtool openssl openssl-devel
2.首先要安装 pcre(pcre 作用是让 nginx 支持 rewrite 功能)
yum install pcre pcre-devel -y
rpc -qa pcre pcre-devel
3.建立nginx管理用户:
groupadd -r nginx
useradd –s /sbin/nologin -g nginx –m nginx
id nginx
4.下载nginx软件并解压源码安装
mkdir –p /home/bqh/tools
cd /home/bqh/tools
wget –q http://nginx.org/download/nginx-1.6.3.tar.gz
tar zxf nginx-1.6.3.tar.gz
./configure --prefix=/application/nginx-1.6.3 --user=nginx --group=nginx --with-http_ssl_module --with-http_stub_status_module
make
make install
介绍:
--prefix=软件安装到哪里
--user=用户 (默认nobody)
--group=用户组 (默认nobody)
--with-http_ssl_module 加密模块
--with-http_stub_status_module 状态模块
cd ..
ln -s /application/nginx-1.6.3/ /application/nginx 做个软连接(快捷方式)隐藏版本
安装完nginx后,并不能直接对外提供服务,需要先启动nginx才行。
如果ngnix软件不是本人装的,那么我们可以用以下命令查看安装路径及参数信息:
/application/nginx/sbin/nginx –v
启动nginx :
启动前检查配置文件语法:/application/nginx/sbin/nginx -t
/application/nginx/sbin/nginx 启动nginx
ps -ef|grep nginx|grep -v grep 检查是否启动了
ss -lntup|grep nginx 检查是否启动了
我们在本地用curl 127.0.0.1 检查nginx启动的实际效果如下:
在windows下通过浏览器检测的方式如下:
到这里,nginx服务已经完成搭建了。若搭建静态网站,我们可以把静态网页放到/application/nginx/html/下即可。
例如:
下面我们进入安装nginxd的目录下:/application/nginx-1.6.3/conf
我们去除掉默认配置文件里的注释和空行并重定向到nginx.conf文件里,同时我们需要配置如下:
egrep -v "#|^$" nginx.conf.default >nginx.conf //去掉包含#号和空行的内容
nginx.conf具体配置如下:
[root@lamp01 conf]# vim nginx.conf [root@lamp01 conf]# cat nginx.conf worker_processes 1; #worker进程的数量 events { #事件区块开始 worker_connections 1024; #每个worker进程支持的最大连接数 } #事件区块结束 http { #http区块开始 include mime.types; #nginx支持的媒体类型库文件包含 default_type application/octet-stream; #默认的媒体类型 sendfile on; #开启高效传输模式 keepalive_timeout 65; #连接超时 server { #第一个server区块开始,表示一个独立的虚拟主机站点 listen 80; #提供的服务的端口,默认80 server_name www.test.com; #提供服务的域名主机名 location / { #第一个location区块开始 root html; #站点的根目录,相对于nginx安装目录 index index.html index.htm; #默认的首页文件,多个用空格分开 } error_page 500 502 503 504 /50x.html; #出现对应的http状态码使用50x.html回应 } }
在/application/nginx/html目录下一个静态文件 index.html
[root@lamp01 html]# pwd /application/nginx/html [root@lamp01 html]# vim index.html <!doctype html> <html lang="zh"> <head> <meta charset="utf-8"> <title>第一个静态文件</title> </head> <body> hello world!欢迎来到锦衣卫博客! </body> </html>
我们通过hosts来解析
我们首先刷新配置,从本地访问www.test.com看是否成功。
/application/nginx/sbin/nginx -t
/application/nginx/sbin/nginx -s reload
同样在windows系统,配置一下host在“c:\windows\system32\drivers\etc”下的hosts中配置一下域名解析
然后cmd再ping一下这个域名是否正确指向了这个ip上
正确指向后在telnet一下80端口看一下是否可以与端口通信(如果telnet提示没有此命令是没有安装客户端,在启用或禁用windows功能处安装后再操作即可)
出现下界面及表示通信成功。
打开浏览器,输入www.test.com会得到以下结果,就说明外网访问成功
测试都成功,ok!
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
nginx常用命令:
/application/nginx/sbin/nginx -t 启动前检查配置文件语法
/application/nginx/sbin/nginx 启动nginx
/application/nginx/sbin/nginx –v 查看安装路径及参数信息
/application/nginx/sbin/nginx -s reload 重新载入配置文件
/application/nginx/sbin/nginx -s reopen 重启 nginx
/application/nginx/sbin/nginx -s stop 停止 nginx
nginx软件功能模块说明:
nginx http功能模块:
ngx_http_core_module //包括一些核心的http参数配置,对应nginx的配置为http区块部分
ngx_http_access_module //访问控制模块,用来控制网站用户对nginx的访问
ngx_http_gzip_module //压缩模块,对nginx返回的数据压缩,属于性能优化模块
ngx_http_fastcgi_module //fastcgi模块,和动态应用相关的模块,例如php
ngx_http_proxy_module //代理模块
ngx_http_upstream_module //负载均衡模块,实现网站的负载均衡功能及节点的健康检查
ngx_http_rewrite_module //url地址重写模块
ngx_http_limit_conn_module //限制用户并发连接数及请求数模块
ngx_http_limit_req_module //限制nginx request processing rate 根据定义的key
ngx_http_log_module //访问日志模块,以指定的格式记录nginx客户访问日志等信息
ngx_http_auth_basic_module //web认证模块,设置web用户通过账号密码访问nginx
ngx_http_ssl_module //ssl模块,用于加密的http连接,如https
ngx_http_stub_status_module //记录nginx基本访问状态信息等的模块
上一篇: cdr怎么将照片处理成油画蜡笔效果?