A-A+

tengine+tomcat 安装配置笔记

2017年01月13日 Tengine 暂无评论 阅读 254 次浏览 次

以前一直用glassfish, 从3到4, 省事倒是省事,就是太重了,图形界面配置过程中对cpu和内存的消耗较大,常遇到卡死的情况,虽然配置完成后,运行稳定,但还是决定放弃,改用tengine+tomcat。
 
下载地址:http://tengine.taobao.org/
 
tengine-1.5.2算是最新的稳定版
 
 
tomcat的设置可参见:http://my.oschina.net/u/221951/blog/372406
 
在安装tengine之前,确认centos环境中有无gcc、pcre、openssl,如果没有按以下命令进行安装
 
#yum install gcc
#yum -y install pcre-devel
安装最新版本:pcre-devel-7.8-6.el6.i686

#yum install openssl-devel
安装最新版本:openssl-devel-1.0.1e-30.el6_6.5.i686
开始安装tengine,注意确认有无nginx用户和app用户组,或者根据自身情况更改
 
#tar -vxzf tengine-1.5.2.tar.gz
#cd tengine-1.5.2
#./configure  --prefix=/usr/local/nginx  --user=nginx --group=app --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_concat_module --with-http_upstream_check_module --with-http_sub_module --with-http_realip_module
#make && make install
tengine自启动脚本
 
#vi /etc/rc.d/init.d/nginx
编辑脚本如下,注意配置目录的对应:
 
#!/bin/bash
# nginx Startup script for the Nginx HTTP Server
# it is v.0.0.2 version.
# chkconfig: - 85 15
# description: Nginx is a high-performance web and proxy server.
# It has a lot of features, but it's not for everyone.
# processname: nginx
# pidfile: /var/run/nginx.pid
# config: /usr/local/nginx/conf/nginx.conf
nginxd=/usr/local/nginx/sbin/nginx
nginx_config=/usr/local/nginx/conf/nginx.conf
nginx_pid=/usr/local/nginx/logs/nginx.pid
RETVAL=0
prog="nginx"
# Source function library.
. /etc/rc.d/init.d/functions
# Source networking configuration.
. /etc/sysconfig/network
# Check that networking is up.
[ ${NETWORKING} = "no" ] && exit 0
[ -x $nginxd ] || exit 0
# Start nginx daemons functions.
start() {
if [ -e $nginx_pid ];then
echo "nginx already running...."
exit 1
fi
echo -n $"Starting $prog: "
daemon $nginxd -c ${nginx_config}
RETVAL=$?
echo
[ $RETVAL = 0 ] && touch /var/lock/subsys/nginx
return $RETVAL
}
# Stop nginx daemons functions.
stop() {
echo -n $"Stopping $prog: "
killproc $nginxd
RETVAL=$?
echo
[ $RETVAL = 0 ] && rm -f /var/lock/subsys/nginx /usr/local/nginx/logs/nginx.pid
}
reload() {
echo -n $"Reloading $prog: "
#kill -HUP `cat ${nginx_pid}`
killproc $nginxd -HUP
RETVAL=$?
echo
}
# See how we were called.
case "$1" in
start)
start
;;
stop)
stop
;;
reload)
reload
;;
restart)
stop
start
;;

status)
status $prog
RETVAL=$?
;;
*)
echo $"Usage: $prog {start|stop|restart|reload|status|help}"
exit 1
esac
exit $RETVAL
接下来保存退出,变更文件权限,
 
#:wq
#chmod a+x /etc/rc.d/init.d/nginx
#chkconfig --add nginx
#service nginx restart
编辑/user/local/nginx/conf/nginx.conf
 
# 根据你服务器的cpu核数来确定此值
worker_processes 4;

error_log logs/error.log crit;
#error_log logs/error.log notice;
#error_log logs/error.log info;

#pid logs/nginx.pid;
  
worker_rlimit_nofile 65535;
  
# events事件主要用来确定Nginx使用哪种算法
  events {
      use epoll;
      worker_connections 65535;
  }
  
  http {
   include mime.types;
   default_type application/octet-stream;
  
   #关闭http header 中关于服务器的版本号
   server_tokens  off;
  
   #log_format main '$remote_addr - $remote_user [$time_local] "$request" '
   # '$status $body_bytes_sent "$http_referer" '
   # '"$http_user_agent" "$http_x_forwarded_for"';
  
   # 由于Nginx用于代理Tomcat,所以记录访问日志的事情交给Tomcat来做好了,注释掉
   #access_log logs/access.log main;
  
   sendfile on;
   tcp_nopush on;
   tcp_nodelay on;
  
  #keepalive_timeout 0;
   keepalive_timeout 65;
  
   server_names_hash_bucket_size 128;
   client_header_buffer_size 32k;
   large_client_header_buffers 4 32k;
   client_max_body_size 3m;
   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;
  
  # 启用gzip压缩,提高用户访问速度
   gzip on;
   gzip_min_length 1k;
   gzip_buffers 4 16k;
   gzip_http_version 1.1;
   gzip_comp_level 2;
   gzip_types text/plain application/x-javascript text/css application/xml;
   gzip_vary on;
  
  # 配置需要代理的tomcat
  upstream tomcat_proxy{
  ip_hash;
           session_sticky;
     server 192.168.1.114:8080;
  }
  
  # 虚拟主机:www.abc.com
  server {
     listen 80;
     server_name www.abc.com;
     index index.html index.htm index.jsp;
     root /home/webapp/www/app1;
  
     if (-d $request_filename){
       rewrite ^/(.*)([^/])$ http://$host/$1$2/ permanent;
     }
  
     # 动态页面,交给tomcat处理
     location ~ \.(jsp|jspx|do|action)?$ {
       proxy_set_header Host $host;
       proxy_set_header X-Forwarded-For $remote_addr;
       proxy_pass http://tomcat_proxy;
     }
  
   location /training/ { 
            proxy_pass        http://tomcat_proxy;
            proxy_set_header  Host             $host; 
            proxy_set_header  X-Real-IP        $remote_addr; 
            proxy_set_header  X-Forwarded-For  $proxy_add_x_forwarded_for; 
            #sub_filter        /training/          /; 
        } 
  
      # 用户浏览器端的缓存设置
      location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ {
        expires 10d;
      }
      
      location ~ .*\.(js|css)?$ {
        expires 1h;
      }
      
       access_log off;
       #charset koi8-r;
       #access_log logs/host.access.log main;
  }
}
设置确认没有问题,保存退出,可重启: service nginx restart
标签:

评论已关闭!

Copyright © 香港虚拟主机_美国虚拟主机_香港服务器_美国服务器租用托管 保留所有权利.   Theme  Ality 蜀ICP备14006632号-1

用户登录