Red de conocimiento informático - Conocimiento del nombre de dominio - Cómo crear un entorno de prueba para un proyecto web_Crear un entorno de prueba

Cómo crear un entorno de prueba para un proyecto web_Crear un entorno de prueba

Al desarrollar proyectos JavaEE medianos y grandes, el marco de separación de front-end y back-end se ha convertido gradualmente en la corriente principal en la industria. La implementación tradicional independiente de front-end y back-end en el mismo proyecto se ha vuelto cada vez más rara. . El backend de dichos proyectos JavaWeb generalmente adopta una arquitectura de microservicio. El backend se descompondrá en muchos proyectos pequeños, y luego se usará bbozookeeper o springCloud para construir microservicios. El frontend será un proyecto separado y las solicitudes del frontend pasarán por él. microservicios.servicio para llamar. Sin embargo, a diferencia de los proyectos web tradicionales, ¿cómo se pueden implementar y ejecutar proyectos con separación de front-end y back-end durante el desarrollo?

Cuando se separa el back-end actual, el proyecto de back-end definitivamente se cargará en el directorio de aplicaciones web de Tomcat, pero ¿cómo se puede acceder al centro de recursos de front-end? Aquí tomamos el middleware de Tomcat como ejemplo para analizar cómo implementar y ejecutar proyectos con front-end y back-end separados al desarrollar dichos proyectos. Es decir, cómo acceder a recursos estáticos en tiempo de ejecución después de implementar el proyecto de back-end. Tomcat (implementación no en línea).

Hay dos soluciones principales: 1. Procesar estos recursos estáticos localmente a través de Nginx. 2. Unifique los recursos estáticos en una aplicación javaweb y lance el paquete war generado automáticamente en tomcat en la primera fase del proyecto back-end. La siguiente es una introducción detallada

1. Utilice Nginx para acceder a recursos estáticos.

Instale nginx localmente y modifique nginx.conf, modifique las configuraciones relevantes y cambie los recursos del puerto de acceso web. La configuración es la siguiente:

server{listen80;server_namelocalhost;charsetutf. -8 ;#aess_loglogs/host.aess.logmain;

ubicación/{proxy_passtomcat_pool;proxy_redirectoff;

proxy_set_headerHOST$host;

proxy_set_headerX-Real-IP$ remote_addr;

proxy_set_headerX-Forwarded-For$proxy_add_x_forwarded_for;

client_max_body_size10m;

client_body_buffer_size128k;

proxy_connect_timeout90;

proxy_send_timeout90 ;

proxy_read_timeout90;

proxy_buffer_size4k;

proxy_buffers432k;

proxy_busy_buffers_size64k;

proxy_temp_file_write_size64k;

}

ubicación~.*.(html|htm|gif|jpg|jpeg|bmp|png|ico|txt|js|css|woff|woff2|ttf|eot|map )$ {

rootD:Workspacesesop-html;indexindex.html;

}

Cambie el objeto de escucha a su puerto de acceso local de Tomcat, la raíz en el ubicación inferior Cambie la ubicación de los recursos estáticos en su proyecto de front-end, de modo que pueda acceder a las páginas de front-end solo implementando el proyecto de back-end.

2. Convierta el proyecto de front-end en un proyecto web dinámico y luego coloque el proyecto de back-end en tomcat.

Esta solución ahorra la necesidad de instalar y configurar nginx localmente. pero solo es aplicable a Durante la fase de desarrollo, los proyectos se implementan, ejecutan y depuran. En el entorno de producción real, los proyectos front-end y back-end generalmente se implementan en diferentes servidores.

Si es IntellijIdea, después de importar el proyecto front-end, haga clic derecho en el proyecto addframeworksupport-->webapplication. En este momento, el proyecto front-end se convertirá en un proyecto javaweb y luego. los recursos estáticos se colocarán en el directorio web generado.

Si es eclipse, puede crear un nuevo proyecto javaweb y colocar los recursos estáticos en el directorio web o de contenido web, o importar directamente el proyecto front-end primero y luego convertir el proyecto en un proyecto web dinámico a través de projectfacts y verifique js y otras configuraciones relacionadas.

Luego, cuando ejecute el proyecto, agregue el paquete de guerra back-end y el paquete de guerra front-end a la implementación y ejecútelos.