CentOS Nginx+jdk+tomcat 环境搭建
一、jdk安装
从上面网页中选择适合的jdk下载到/root/目录下。我选择的是jdk-6u20-linux-i586.bin。
下载完后,修改jdk-6u23-linux-i586.bin的文件属性为可执行,然后执行该程序安装JDK:
chmod +x jdk-6u20-linux-i586.bin
./ jdk-6u20-linux-i586.bin
按空格键看完协议,当出现提示“Do you agree to the above license terms?[yes or no] ” 时,输入“yes”。安装完成后,执行以下语句:
mv jdk1.6.0_23 /usr/local/jdk
编辑profile文件 设置开机文件java开机执行环境文件:
vi /etc/profile
在文件的末尾增加如下内容:

JAVA_HOME="/usr/local/jdk"
CLASS_PATH="$JAVA_HOME/lib:$JAVA_HOME/jre/lib"
PATH="$JAVA_HOME/bin:.:$PATH"
CATALINA_HOME="/usr/local/tomcat"
export JAVA_HOME CATALINA_HOME

保存并退出vi,执行以下命令使配置生效:
source /etc/profile
二、tomcat安装
将 apache-tomcat-6.0.35 放到/root/目录中,拷贝到/user/local/目录下,并重命名为tomcat:
mv apache-tomcat-6.0.23 /usr/local/tomcat
建立网页根目录:
mkdir /www
cp -rf /usr/local/tomcat/webapps/* /www/
配置tomcat的server.xml文件:
vim /usr/local/tomcat/conf/server.xml
查找appBase=”webapps”,修改为appBase=”/www”,其中/www 即为网页的根目录。
修改完成后,启动tomcat,默认监听端口为8080:
/usr/local/tomcat/bin/startup.sh
停止tomcat可以使用以下命令:
/usr/local/tomcat/bin/shutdown.sh
注:在执行./startup.sh,或者./shutdown.sh的时候,爆出了Permission denied,
其实很简单,就是在执行tomcat的时候,用户没有权限,而导致无法执行,
用命令chmod 修改一下bin目录下的.sh权限就可以了:
chmod u+x *.sh
再次执行 /usr/local/tomcat/bin/startup.sh (或/usr/local/tomcat/bin/shutdown.sh)就可以了。
三、nginx与tomcat整合
Nginx与tomcat的整合其实就是只要配置好nginx.conf文件就可以了。
查看并修改nginx.conf文件:
vim /usr/local/nginx/conf/nginx.conf
修改后的nginx.conf文件,红色部分为添加的关于tomcat的代码:

user www www; worker_processes 1; error_log /home/wwwlogs/nginx_error.log crit; pid /usr/local/nginx/logs/nginx.pid; #Specifies the value for maximum file descriptors that can be opened by this process.
worker_rlimit_nofile 51200; events
{
use epoll;
worker_connections 51200;
} http
{
include mime.types;
default_type application/octet-stream; server_names_hash_bucket_size 128;
client_header_buffer_size 32k;
large_client_header_buffers 4 32k;
client_max_body_size 50m; sendfile on;
tcp_nopush on; keepalive_timeout 60; tcp_nodelay on; client_body_buffer_size 512k;
proxy_connect_timeout 5;
proxy_read_timeout 60;
proxy_send_timeout 5;
proxy_buffer_size 16k;
proxy_buffers 4 64k;
proxy_busy_buffers_size 128k;
proxy_temp_file_write_size 128k; fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;
fastcgi_buffer_size 64k;
fastcgi_buffers 4 64k;
fastcgi_busy_buffers_size 128k;
fastcgi_temp_file_write_size 256k; gzip on;
gzip_min_length 1k;
gzip_buffers 4 16k;
gzip_http_version 1.0;
gzip_comp_level 2;
gzip_types text/plain application/x-javascript text/css application/xml;
gzip_vary on; upstream tomcat_server {
server 127.0.0.1:8080;
} #limit_zone crawler $binary_remote_addr 10m; server
{
listen 80;
server_name www.test.com;
index index.html index.htm index.jsp index.do default.jsp default.do index.php;
root /home/wwwroot; if (-d $request_filename)
{
rewrite ^/(.*)([^/])$http://$host/$1$2/ permanent;
}
location ~ \.(jsp|jspx|do|wsdl)?$ {
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_pass http://tomcat_server;
} location ~ .*\.(php|php5)?$
{
fastcgi_pass unix:/tmp/php-cgi.sock;
fastcgi_index index.php;
include fcgi.conf;
} location /status {
stub_status on;
access_log off;
} location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
{
expires 30d;
} location ~ .*\.(js|css)?$
{
expires 12h;
} log_format access '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" $http_x_forwarded_for';
access_log /home/wwwlogs/access.log access;
}
include vhost/*.conf;
}

在配置文件中,静态HTML网页、图片、js、css、Flash等使用Nginx来处理,以便得到更快的速度,文件扩展名为.JSP、.do、wsdl的请求,由Nginx反向代理Tomcat HTTP服务器来处理。
修改/usr/local/nginx/conf/nginx.conf配置文件后,请执行以下命令检查配置文件是否正确:
/usr/local/nginx/sbin/nginx -t
如果屏幕显示以下两行信息,说明配置文件正确:
the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
the configuration file /usr/local/nginx/conf/nginx.conf was tested successfully
重新启动nginx:
/usr/local/nginx/sbin/nginx -s reload
nginx启动后,可以访问以下URL中的jsp实例程序,检查jsp程序能否运行。
http://localhost/examples/jsp/
注意:nginx与tomcat的工作原理是由nginx代理tomcat输出网页,因此如果开启了防火墙,防火墙不用打开8080端口,也一样可以访问jsp页面。
本文内容参考如下网址:
http://www.cnblogs.com/huangjingzhou/articles/2153405.html
http://blog.163.com/leijie131421@126/blog/static/424111452011228103243106/
http://blog.slogra.com/?post=28
http://hi.baidu.com/wptad/blog/item/d3d33b019b0741147bec2cea.html
CentOS Nginx+jdk+tomcat 环境搭建的更多相关文章
- Cacti监控服务器配置教程(基于CentOS+Nginx+MySQL+PHP环境搭建)
Cacti监控服务器配置教程(基于CentOS+Nginx+MySQL+PHP环境搭建) 具体案例:局域网内有两台主机,一台Linux.一台Windows,现在需要配置一台Cacti监控服务器对这两台 ...
- LINUX学习-Nginx+JDK+Tomcat+Mysql搭建JAVA WEB
一.安装JDK环境 1.先到 https://www.oracle.com/java/technologies/javase-jdk8-downloads.html 下载linux jdk-8u2 ...
- centos LNMP第一部分环境搭建 LAMP LNMP安装先后顺序 php安装 安装nginx 编写nginx启动脚本 懒汉模式 mv /usr/php/{p.conf.default,p.conf} php运行方式SAPI介绍 第二十三节课
centos LNMP第一部分环境搭建 LAMP安装先后顺序 LNMP安装先后顺序 php安装 安装nginx 编写nginx启动脚本 懒汉模式 mv /usr/local/php/{ ...
- CentOS上javaweb开发环境搭建
CentOS上javaweb开发环境搭建 安装jdk yum list java* yum install java-1.7.0-openjdk* -y java -version 安装tomcat ...
- Linux 下 Nginx + JDK + Tomcat + MySQL 安装指南
转载请注明出处:http://blog.csdn.net/smartbetter/article/details/52026342 Nginx 是一款高性能的 http 服务器/反向代理服务器/电子邮 ...
- CentOS下Web服务器环境搭建LNMP一键安装包
CentOS下Web服务器环境搭建LNMP一键安装包 时间:2014-09-04 00:50来源:osyunwei.com 作者:osyunwei.com 举报 点击:3797次 最新版本:lnmp- ...
- ECLIPSE JSP TOMCAT 环境搭建
ECLIPSE JSP TOMCAT 环境搭建(完整) 要学习一门语言,首先要做的就是搭建环境,然后能写一个小的Demo(类似Helloworld),不仅可以建立信心,而且还可以为之后的学习搭建一个验 ...
- 阿里云服务器之Tomcat环境搭建以及域名绑定
上一步主要主要讲解在服务器中建立自己的hexo博客环境,最后达到可以远程访问,以及远程git推送到github.这章主要讲解Tomcat环境的搭建,以及域名解析.到这里你的服务器以及可以被全世界的人民 ...
- Jforum环境之Tomcat环境搭建
Jforum环境搭建,需先安装JDK.JRE.Tomcat.Mysql(JDK.JRE暂不做说明).本文先说Tomcat环境搭建 1.进入Apache Tomcat官网下载,我选择的是免安装的zip包 ...
随机推荐
- c/c++多级指针
c/c++多级指针 如图: # include <stdio.h> int main(void) { ; int * p = &i; //p只能存放int类型变量的地址 int * ...
- JVM 学习笔记(一)
JVM ----Java Virtual Machine (熟称:JAVA虚拟机),JVM 在执行JAVA程序的过程中将内容划分为若干个区域,其有各自的用途和管理机制.如下图: 1. 程序计 ...
- 使用Runnable接口创建线程-3
实现Runnable接口的类必须使用Thread类的实例才能创建线程.通过Runnable接口创建线程分为两步: 1. 将实现Runnable接口的类实例化. 2. 建立一个Thread对象,并将第一 ...
- python中的单下划线和双下划线意义和作用
Python中并没有真正意义上的“私有”,类的属性的的可见性取决于属性的名字(这里的属性包括了函数).例如,以单下划线开头的属性(例如_spam),应被当成API中非公有的部分(但是注意,它们仍然可以 ...
- bzoj 3328: PYXFIB 数论
3328: PYXFIB Time Limit: 10 Sec Memory Limit: 256 MBSubmit: 130 Solved: 41[Submit][Status][Discuss ...
- hdu 4762 && 2013 ACM/ICPC 长春网络赛解题报告
这次的答案是猜出来的,如果做得话应该是应该是一个几何概型的数学题: 答案就是:n/(m^(n-1)); 具体的证明过程: 1.首先枚举这M个点中的的两个端点,概率是:n*(n-1); 2.假设这个蛋糕 ...
- Android 网络请求详解
我们知道大多数的 Android 应用程序都是通过和服务器进行交互来获取数据的.如果使用 HTTP 协议来发送和接收网络数据,就免不了使用 HttpURLConnection 和 HttpClient ...
- STL set multiset map multimap unordered_set unordered_map example
I decide to write to my blogs in English. When I meet something hard to depict, I'll add some Chines ...
- 《深入理解linux内核架构》第二章 进程管理和调度
2.1进程优先级 进程优先级 硬实时进程 软实时进程 抢占式多任务处理 2.2进程生命周期 用户太切换到核心态的办法 系统调用 中断 抢占调度模型优先级普通进程<系统调用<中断 普通进程可 ...
- spring集成Apache的ActiveMQ
1.直接看优秀的博客 http://www.open-open.com/lib/view/open1435496659794.html