Linux下Nginx的安装与配置
来源:互联网 发布:java web项目访问路径 编辑:程序博客网 时间:2024/05/22 14:22
前言: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的效果。
- Linux下Nginx的安装与配置
- linux下nginx的安装与配置
- linux下Nginx+tomcat整合的安装与配置
- Linux下Nginx+Tomcat整合的安装与配置
- linux下Nginx+tomcat整合的安装与配置
- Nginx在Linux下的安装与配置
- Linux下Nginx+Tomcat整合的安装与配置
- Linux下Nginx+Tomcat整合的安装与配置
- Linux下Nginx+Tomcat整合的安装与配置
- Linux下Nginx+Tomcat整合的安装与配置
- Linux下Nginx+Tomcat整合的安装与配置
- Linux下Nginx+Tomcat整合的安装与配置
- Linux下Nginx+Tomcat整合的安装与配置
- Linux下Nginx+Tomcat整合的安装与配置
- Linux下Nginx+Tomcat整合的安装与配置
- Linux下Nginx+Tomcat整合的安装与配置
- Linux下Nginx+Tomcat整合的安装与配置
- Linux下Nginx+Tomcat整合的安装与配置
- 三种ViewController跳转的异同
- swift闭包的强引用
- UI工程师-无需编程-免费开发企业APP应用
- iOS个人整理05-应用程序的启动流程--视图控制器ViewController的加载过程--MVC架构
- hdu 2224(双调旅行商问题)
- Linux下Nginx的安装与配置
- 看透欲望的本质
- Access Hbase
- iOS 列表页跳转到详细页 详细页隐藏TabBar
- 【iOS】倒计时5分钟
- java 三大特性之封装
- Ubuntu Server安装图形界面--存一份
- gsoap工具的使用
- 移动端网页判断手指触摸滑动的方向