Linux下Nginx的安装与配置

4 篇文章 0 订阅
3 篇文章 0 订阅

前言:Nginx是目前最流行的web服务器,用于反向代理和负载均衡,能够很好地应对大并发量状况。对于javaWeb程序,用的最多的服务器架构就是nginx+tomcat。这篇文章就以此为例,详细的讲解一下该服务器架构的搭建。

主要内容包括:   1.Linux下tomcat的安装配置 

                            2.Nginx的安装 

                            3.Nginx+tomcat的搭建与配置

系统:RedHat6-64位


一、tomcat的安装

·安装jdk

 

1.下载jdk的tar.gz包,放在/usr/local目录下

2.在该目录下新建java目录,进入java,解压缩jdk。

tar -zxvf /usr/local/jdk-7u79-linux-x64.gz

3.建立软连接(类似于windows中的快捷方式):

  ln -s jdk1.7.0_79 /usr/local/jdk

4.配置环境变量,在/etc/profile文件中加入如下内容:

#jdk

export  JAVA_HOME=/usr/local/java/jdk1.7.0_79

export  JAVA_BIN=$JAVA_HOME/bin

export  PATH=$PATH:$JAVA_HOME/bin

export  CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

export  PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH

5.使配置生效

# source  /etc/profile

6.测试是否成功

#java-version

 

·安装tomcat

1.进入/usr/local目录,将下载的tar.gz包复制过来。

2. 新建/usr/local/tomcat目录,在该目录下解压缩tar.gz包。

# tar-zxvf  /usr/local/apache-tomcat-7.0.65.tar.gz

3.生成软连接

ln -s  apache-tomcat-7.0.65 /usr/local/tomcatServer

4.启动tomcat

进入bin目录,./startup.sh即可。

·安装多个tomcat

重新解压一份到新的目录,然后修改下server.xml文件的启动,关闭端口就可以了。





·部署项目到tomcat

把你的web项目打包成war包,然后放到tomcat安装目录下的webapps目录下,就可以了。


二、Nginx的安装


 nginx依赖以下模块:
·gzip模块需要 zlib 库
·rewrite模块需要 pcre 库
·ssl 功能需要openssl库

所以需要先安装这三个软件。

2.1.安装pcre

1.获取pcre编译安装包,在http://www.pcre.org/上可以获取当前最新的版本,放在/usr/local/目录下

2.cd /usr/local/
   tar -zxvf pcre-8.21.tar.gz
   cd pcre-8.21
   ./configure
   make
   make install

2.2 安装openssl

1. 获取openssl编译安装包,在http://www.openssl.org/source/上可以获取当前最新的版本。

2.cd /usr/local/
   tar -zxvf openssl-1.0.1c.tar.gz
   ./config 
   make
   make install

2.3 安装zlib

1.获取zlib编译安装包,在http://www.zlib.net/上可以获取当前最新的版本。

2.cd /usr/local/ 
   tar -zxvf zlib-1.2.8.tar.gz cd zlib-1.2.8
   ./configure
   make
   make install

2.4 安装Nginx

Nginx 一般有两个版本,分别是稳定版和开发版,您可以根据您的目的来选择这两个版本的其中一个,下面是把 Nginx 安装到 /usr/local/nginx 目录下的详细步骤:

1.在http://nginx.org/en/download.html上可以获取当前最新的稳定版本。
2.cd /usr/local/
   tar -zxvf nginx-1.8.0.tar.gz
   cd nginx-1.8.0  
   ./configure --prefix=/usr/local/nginx 
   make
   make install

2.5 启动、停止、重载Nginx

确保系统的 80 端口没被其他程序占用,
/usr/local/nginx/sbin/nginx
 
检查是否启动成功:
netstat -ano|grep 80 有结果输入说明启动成功


打开浏览器访问此机器的 IP,或者输入http://localhost,如果浏览器出现 Welcome to nginx! 则表示 Nginx 已经安装并运行成功。
 
重启:/usr/local/nginx/sbin/nginx –s reload

停止:/usr/local/nginx/sbin/nginx –s stop


三、Nginx配置以及集成tomcat做反向代理和负载均衡

我们只需要修改conf目录下的nginx.conf文件即可。


#运行用户,不用管
user  nobody;
#启动进程,通常设置成和CPU数相同
worker_processes  1;

#全局错误日志及PID文件
error_log  logs/error.log;
error_log  logs/error.log  notice;
error_log  logs/error.log  info;

pid        logs/nginx.pid;

#工作模式及连接数上限
events {
    worker_connections  1024;#单个后台worker process进程的最大并发链接数
}

#设定http服务器,利用它的反向代理功能提供负载均衡支持
http {
     #设定mime类型,类型由mime.type文件定义
    include       mime.types;
    default_type  application/octet-stream;


    #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
    #                  '$status $body_bytes_sent "$http_referer" '
    #                  '"$http_user_agent" "$http_x_forwarded_for"';


    #access_log  logs/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

    #keepalive_timeout  0;
    keepalive_timeout  65;

    gzip  on;

    #设定负载均衡的服务器列表
    upstream mysvr {
    #weigth参数表示权值,权值越高被分配到的几率越大
    #首先要开启两个tomcat服务,设置不同的端口。把两个tomcat下的首页设置成不同的内容,这样在测试时效果比较明显。
    server localhost:8080 weight=4;
    server localhost:8084 weight=1;
    }

    server {
        listen       80;
        server_name  localhost;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {
            root   html;
            index  index.html index.htm;
            proxy_pass  http://mysvr ;#请求转向mysvr 定义的服务器列表
        }

        #error_page  404              /404.html;

        # redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }

    }

}


重载Nginx,访问http://localhost,刷新多次页面,可看到nginx分发到不同tomcat的效果。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值