Tomcat bajo nginx servidor de ventanas con algunos consejos de configuración

Los últimos dos días han sido para los clientes para hacer frente a una vulnerabilidad (Liga Verde y Tecnología "a distancia Sistema de Evaluación de Seguridad") y el sitio de acogida para las vulnerabilidades relacionadas, el más común es actualizar la versión del software.

En general se puede actualizar a la última versión, esta actualización nginx de 1.13.6 a 1.17.9, Tomcat actualizar desde 08/05/16 hasta 08/05/51.

Primer despliegue diagrama de configuración descrito brevemente como sigue:

 

 

 

 

1, tomcat configuración

Una vez configurada la finalización de la actualización más común de software, configuración de Tomcat es relativamente simple, necesidad de ser modificado, donde hay dos:

\ Conf \ server.xml

<Puerto conector = " 9005 " protocol = " org.apache.coyote.http11.Http11Nio2Protocol " redirectPort = " 8443 " 
               ConnectionTimeout = " 20000 " URIEncoding = " UTF-8 " MinSpareThreads = " 25 " enableLookups = " falsos " 
               maxThreads = " 500 " acceptCount = " 500 " />

\ Conf \ web.xml etiqueta siguiente estructura de la raíz web-app modificado de la siguiente manera:

<security-constraint>   

        <web-resource-collection>   

            <url-pattern> / * </ url-pattern> 
            <http-method> PUT </ http-method>   
            <http-method> Eliminar </ http-method>   
            < http-method> CABEZA </ http-method>   
            <http-method> OPCIONES </ http-method>   
            <http-method> TRACE </ http-method>   

        </ web-resource-collection>   

        <auth-constraint>   

        </ auth-constraint>   

    </ security-constraint>   

    <login-config>   
        <auth-method> BASIC </ auth-method>   
    <  / login-config> 
    
    <servlet> 
        <servlet-name> por defecto </ servlet-name>
        <servlet-class> org.apache.catalina.servlets.DefaultServlet </ servlet-clase> 
        <init-param> 
            <param-name> depuración </ param-name> 
            <param-value> 0 </ param-value> 
        < / init-param> 
        <init-param> 
            <param-name> anuncios </ param-name> 
            <param-value> false </ param-value> 
        </ init-param> 
        <init-param> 
            <param-name> de sólo lectura </ param-name> 
            <param-value> false </ param-value> 
        </ init-param> 
        <load-on-startup> 1 </ load-on-startup> 
    </ servlet>

 

2, nginx configuración

\ Conf \ nginx.conf configuración es la siguiente:

nadie #user; 
worker_processes 16; 

error_log logs / error.log; 
error_log logs / error.log aviso; 
error_log logs / error.log info; 

Eventos { 
    worker_connections 10240; 
} 

Http { 

	incluir mime.types; 
    aplicación default_type / octet-stream; 
	server_token apagado; 

    log_format principal '$ remote_addr - $ usuario_remoto [$ time_local] "$ solicitud"' 
                      '$ $ status body_bytes_sent "$ HTTP_REFERER"' 
                      ' "$ HTTP_USER_AGENT" "$ HTTP_X_FORWARDED_FOR"'; 

    access_log logs / access.log principal; 

    sendfile en; 
    #tcp_nopush en;

    ## Inicio: Tiempos de espera de ## 
	client_body_timeout 10; 
    client_header_timeout 10; 
    keepalive_timeout 30; 
    send_timeout 10; 
    keepalive_requests 10; 
	## Final: ## Tiempos de espera 

    #gzip sucesivamente; 
	
    mapa $ $ http_upgrade connection_upgrade {   
        actualización predeterminado;  
        '' cerrar;  
    } 
    Xuehua aguas arriba { 
        ip_hash; 
        127.0.0.1:9005 servidor; 
		127.0.0.1:9006 servidor; 
		127.0.0.1:9007 servidor; 
		127.0.0.1:9008 servidor; 
		127.0.0.1:9009 servidor; 
    } 
	Xuehua2 aguas arriba { 
        ip_hash; 
        127.0.0.1:9019 servidor;
    } 

    Miservidor aguas arriba { 
        ip_hash;
        127.0.0.1:35001 servidor; 
        127.0.0.1:35002 servidor; 
    }    


    Servidor { 
        escuchar 8081; 
		localhost nombre_servidor; 
		
        ubicación ^ ~ / api / Mensaje { 
			PROXY_PASS http: // myserver / mensaje; 
			proxy_http_version 1,1;  
			Asciende proxy_set_header $ http_upgrade;  
			Conexión proxy_set_header "actualización"; 
			proxy_set_header X-real-IP $ remote_addr; 
        } 
	

        Ubicación ^ ~ / api / { 
                PROXY_PASS http: // myserver /; 
                proxy_set_header X-real-IP $ remote_addr; 
        } 
		
		#配置防盗链
		.. ubicación ~ * ^ + \ (gif | jpg | png | SWF | flv | RAR | zip) {$
			proxy_set_header host remoto $ remote_addr;
			valid_referers ninguno bloqueado server_names * .ahcrb.net.cn 
			http: // localhost baidu.com; 
			if ($ invalid_referer) { 
			reescritura ^ / [img] http://ahcrb.net.cn/images/default/logo.gif [/ img]; 
			# 403 de retorno; 
			} 
		} 
		
		# Ubicación / { 
		# permiten 127.0.0.1; 
		# negar todo; 
		#} 

		Lugar / { 
			proxy_http_version 1.1; 
			proxy_set_header conexión ""; 
			proxy_set_header Accept-Encoding ""; 
			proxy_set_header anfitrión $ anfitrión; 
			proxy_set_header X-real-IP $ remote_addr; 
			proxy_connect_timeout 10; 
			proxy_read_timeout 200;
			proxy_set_header X-reenvía Por $ proxy_add_x_forwarded_for; 
			Asciende proxy_set_header $ http_upgrade;  
			proxy_send_timeout 90; 
			PROXY_PASS http: // xuehua2 /; 
		} 
		
		Error_page 403 404 /404.html; 
		location = / 404.html { 
			interna; 
		} 

        Error_page /50x.html 500 502 503 504; 
        location = {/50x.html 
            HTML raíz; 
        }         
    } 
	
	Servidor { 
        escuchar 8082; 
		nombre_servidor 172.16.90.29; 
		
        ubicación ^ ~ / api / Mensaje { 
			PROXY_PASS http: // myserver / mensaje; 
			proxy_http_version 1,1;  
			Conexión proxy_set_header "actualización"; 
			proxy_set_header X-real-IP $ remote_addr; 
        } 
	

        Ubicación ^ ~ / api / {
                PROXY_PASS http: // myserver /; 
                proxy_set_header X-real-IP $ remote_addr; 
        } 
		
		
		# Ubicación / { 
		# permiten 127.0.0.1; 
		# negar todo; 
		#} 

		Lugar / { 
			proxy_http_version 1.1; 
			proxy_set_header conexión ""; 
			proxy_set_header Accept-Encoding ""; 
			proxy_set_header anfitrión $ anfitrión; 
			proxy_set_header X-real-IP $ remote_addr; 
			proxy_set_header host remoto $ remote_addr; 
			proxy_set_header X-reenvía Por $ proxy_add_x_forwarded_for; 
			proxy_connect_timeout 10;
			proxy_read_timeout 200; 
			proxy_send_timeout 90; 
			PROXY_PASS http: // xuehua2 /; 
		}
		
		error_page 403 404 /404.html; 
		location = / 404.html { 
			interna; 
		} 

        Error_page /50x.html 500 502 503 504; 
        location = {/50x.html 
            HTML raíz; 
        }         
    } 

}

  

3, después de Tomcat con Nginx empezar, hay dos maneras de forma local en el servidor para acceder al servicio:

  • Acceso directo a las Tomcat puerto, como 127.0.0.1:9005
  • Acceso Nginx puerto de escucha, como si 127.0.0.1:8081 el acceso de esta manera es equivalente a más de un agente, y luego envía la solicitud al 9005 8081

4, y el servidor es accesible en el mismo equipo red de área local

     Tenga en cuenta que las necesidades de los servidores qué puertos están abiertos y accesibles únicamente los puertos permitidos, o la necesidad de crear una nueva regla de entrada, si desea abrir el puerto 9005, el panel de control - firewall - la nueva regla de entrada, se sumará el puerto en 9005 .

5, si configura dos direcciones en un nginx prueba, entonces se tendría que configurar el servidor nginx dos años, dos puertos de monitoreo. Cada servidor de Asignación de un gato, se pusieron bajo el código antiguo y el nuevo código dos Tomcat, entonces usted puede hacer para configurar los dos entornos.

     También tenga en cuenta que el puerto de escucha para abrir. En función de los diferentes puertos de acceso al servicio, en este caso la configuración es la siguiente:

 

Supongo que te gusta

Origin www.cnblogs.com/tank073/p/12512573.html
Recomendado
Clasificación