本次安装CentOS版本为6.6,下面主要介绍本次安装的内容:
安装
配置
应用集成
负载均衡
SSL
安装
在CentOS6上安装nginx有多重安装方式,这里用最简单方面的yum安装方式,二进制安装和源代码编译安装需要去网站下载对应的文件,下载地址为http://nginx.org/,截止到4月10号现在的最新版本为1.7.12
在yum安装前,centos6以上版本的nginx安装需要先执行
[root@localhost ~]# rpm -ivh http://nginx.org/packages/centos/6/noarch/RPMS/nginx-release-centos-6-0.el6.ngx.noarch.rpm
查看nginx的安装信息
[root@localhost ~]# yum info nginx
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.pubyun.com
* extras: mirrors.pubyun.com
* updates: www.ftp.ne.jp
base | 3.7 kB 00:00
extras | 3.4 kB 00:00
nginx | 2.9 kB 00:00
nginx/primary_db | 36 kB 00:00
updates | 3.4 kB 00:00
updates/primary_db | 2.7 MB 00:11
Installed Packages
直接安装nginx
yum -y install nginx
启用nginx
service nginx start
其他名称
service nginx stop #关闭
service nginx restart #重启
service nginx reload #配置变更后重新加载,推荐
配置
如果是生产环境或者测试环境,建议将nginx服务器设置为开机启动
#查看目前开机启用的列表
[root@localhost ~]# chkconfig --list
auditd 0:off 1:off 2:on 3:on 4:on 5:on 6:off
blk-availability 0:off 1:on 2:on 3:on 4:on 5:on 6:off
crond 0:off 1:off 2:on 3:on 4:on 5:on 6:off
ip6tables 0:off 1:off 2:on 3:on 4:on 5:on 6:off
iptables 0:off 1:off 2:on 3:on 4:on 5:on 6:off
iscsi 0:off 1:off 2:off 3:on 4:on 5:on 6:off
iscsid 0:off 1:off 2:off 3:on 4:on 5:on 6:off
lvm2-monitor 0:off 1:on 2:on 3:on 4:on 5:on 6:off
mdmonitor 0:off 1:off 2:on 3:on 4:on 5:on 6:off
multipathd 0:off 1:off 2:off 3:off 4:off 5:off 6:off
netconsole 0:off 1:off 2:off 3:off 4:off 5:off 6:off
netfs 0:off 1:off 2:off 3:on 4:on 5:on 6:off
network 0:off 1:off 2:on 3:on 4:on 5:on 6:off
nginx 0:off 1:off 2:on 3:on 4:on 5:on 6:off
postfix 0:off 1:off 2:on 3:on 4:on 5:on 6:off
rdisc 0:off 1:off 2:off 3:off 4:off 5:off 6:off
restorecond 0:off 1:off 2:off 3:off 4:off 5:off 6:off
rsyslog 0:off 1:off 2:on 3:on 4:on 5:on 6:off
saslauthd 0:off 1:off 2:off 3:off 4:off 5:off 6:off
sshd 0:off 1:off 2:on 3:on 4:on 5:on 6:off
udev-post 0:off 1:on 2:on 3:on 4:on 5:on 6:off
设置开机启动
--level<等级代号> 指定读系统服务要在哪一个执行等级中开启或关毕。
等级0表示:表示关机
等级1表示:单用户模式
等级2表示:无网络连接的多用户命令行模式
等级3表示:有网络连接的多用户命令行模式
等级4表示:不可用
等级5表示:带图形界面的多用户模式
等级6表示:重新启动
[root@localhost ~]# chkconfig --level nginx 2345 on
默认配置:在浏览器上输入 http://localhost 如果在其他机器上安装使用 ifconfig 查看ip地址,看到nginx的默认页面表示安装成功
nginx安装后的主要目录在
-
nginx.conf 在 /etc/nginx下
默认的静态文件地址在 /usr/share/nginx/
访问日志在 /var/log/nginx/ ,nginx的log非常重要,可以通过nginx的配置达到对log的格式进行配置,后期也可以通过工具来分析log日志,计算出服务器的pv和uv,大型应用可以将log信息存储到hadoop进行网站的访问分析。
集成应用(补充)
这里集成应用可能存在以下几种情况:
1、反向代理情况,将访问的请求直接转交给其他任意的HTTP服务器,比如Tomcat、apache、nginx、IIS
2、Nginx+PHP
3、Nginx+Tomcat
负载均衡
负载均衡在人人向往高并发的时代已经是必要性配置了,在应用服务器采用集群部署的情况下需要用到nginx的负载均衡机制,这里只涉及到负载均衡,如果还需要Session会话同步情况,本身nginx不支持会话粘性,此处和apache有些区别,在Tomcat集群情况下可以使用MSM实现集群会话同步,也可以使用在应用中使用Shiro框架的Session管理功能实现会话同步,Tomcat集群会讲到,也可以使用的Shiro的session控制来实现,后面会讲到。
负载均衡的配置需要先定义一个集群的列表,如果单台物理服务器,区分端口号
upstream groups {
server 127.0.0.1:8080;
server 127.0.0.1:9080;
server 127.0.0.1:10080;
server 127.0.0.1:11080;
}
location / {
root /usr/share/nginx/html;
index index.html;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://groups;
}
加密SSL(补充)
如果只是测试下nginx的ssl功能,先检查centos是否安装了openssl,生产对应的
vi /etc/nginx/conf.d/example_ssl.conf
将openssl生成的几个key文件拷贝到该目录下,通过路径映射即可,注意防火墙需要开始443端口