>운영 및 유지보수 >리눅스 운영 및 유지 관리 >Linux 서버에 JavaWeb을 배포하는 방법

Linux 서버에 JavaWeb을 배포하는 방법

WBOY
WBOY앞으로
2023-05-13 08:31:101756검색

1. 서버, 도메인 이름 구입 및 등록

이제 등록이 훨씬 간단해졌습니다. 앱을 다운로드하고 스캔하면 성공적으로 등록할 수 있습니다.

2. 환경 구축

Centos7.3 클라우드 서버에 Nginx, MySQL, JDK, Tomcat 환경 설치

Centos7.6 설치 mysql5.5 튜토리얼

Cenos7.3 mysql8.0 설치

Centos8.0 컴파일 및 설치가 안정적입니다 최신 버전의 nginx

Centos7.3 Nginx를 제거(완전히 제거)하고 Nginx를 다시 설치합니다(RPM 소스 yum 설치)

궁금한 점이 있으면 Baidu

3에 직접 프로젝트 배포

패키징하세요. 업로드할 웹 프로젝트 war 패키지를 Tomcat의 webapps 디렉터리에 업로드합니다. Tomcat을 시작하기 전에 프로젝트의 war 패키지를 업로드하면 폴더에 압축이 풀리지 않습니다. Tomcat의 웹앱 아래 프로젝트가 변경(추가 또는 삭제)될 때마다 Tomcat을 다시 시작해야 합니다.

참고: Tomcat의 bin 디렉터리에 다음 명령을 입력해야 실행됩니다. 환경변수를 설정하면 어느 경로에서나 실행할 수 있습니다.

./startup.sh		// 启动Tomcat./shutdown.sh		// 关闭Tomcat

webapp에 업로드된 war 패키지는 프로젝트 이름과 동일한 이름의 폴더로 파싱됩니다. 해당 패키지를 열면 프로젝트 war 패키지가 업로드된 경우와 유사한 계층 구조가 나타납니다. webapp의 경우 프로젝트와 동일한 폴더에 압축이 풀리지 않습니다. 이는 Tomcat을 다시 시작하지 않았음을 의미합니다. 먼저 위의 shutdown 명령을 실행한 다음 시작 명령을 실행합니다.

압축 해제된 프로젝트에 들어가면 프로젝트의 루트 디렉터리에서 jsp 파일을 볼 수 있고, javabean 및 lib 디렉터리와 같은 java 파일, web.xml 또는 기타 구성 파일이 루트 디렉터리 INF의 WEB에 존재하는 것을 확인할 수 있습니다. Java 코드는 클래스 파일로 컴파일되어 클래스 폴더에 저장되기 때문입니다.

여기서 특별히 주의할 점은 Java 웹 프로젝트가 Linux 서버의 데이터베이스에 연결해야 하는 경우 업로드된 프로젝트를 Linux의 mysql 데이터베이스의 사용자 이름과 비밀번호로 미리 변경해야 한다는 것입니다. 그런 다음 이를 war 패키지로 패키징합니다. 또는 Linux에서 Tomcat 컴파일된 프로젝트 아래에 프로젝트 경로 변경 내용을 직접 입력하고 완료 후 파일을 저장한 후 Tomcat을 닫고 Tomcat을 시작합니다.

프로젝트 데이터베이스 파일 가져오기 문제

Linux에서 프로젝트 데이터베이스의 액세스 주소는 다음과 같이 변경되지 않습니다.

url = "jdbc:mysql://localhost:3306/数据库名"; 
或
url = "jdbc:mysql://127.0.0.1:3306/数据库名"; 
或 
url = "jdbc:mysql://服务器IP地址:3306/数据库名";

프로젝트가 서버에 업로드된 후에는 localhost 또는 127.0.0.1도 서버의 로컬 경로는 물론 여기서 서비스의 공인 IP를 사용하도록 선택할 수도 있지만 이때 localhost나 127.0.0.1이 서버 IP를 나타내기 때문에 일반적으로 권장하지 않습니다.

로컬 Windows의 Navicat, SQLyog 또는 기타 데이터베이스 시각화 도구는 Linux 서버의 msyql에 연결되어 프로젝트에서 데이터베이스 파일을 직접 가져올 수 있습니다.

로컬 mysql 데이터베이스를 Linux 서버의 mysql 데이터베이스로 가져옵니다

먼저 Windows에서 데이터베이스 파일을 내보내고 서버에 업로드한 다음 로컬 Windows 파일과 동일한 이름으로 서버에 데이터베이스 파일을 만듭니다.

create database 数据库名

Switch 생성된 데이터베이스로 이동

use 数据库名

데이터 가져오기

source 上传的数据库文件路径.sql

너무 번거롭지 않다면 직접 Navicat을 사용하여 서버에 있는 mysql을 연결하고 Navicat에서 직접 가져올 수도 있습니다.

Nginx 리버스 프록시는 도메인 이름을 통해 프로젝트에 액세스합니다.

프로젝트에서 사용할 도메인 이름을 확인합니다. 일반적으로 액세스를 위해 두 번째 수준 도메인 이름을 사용합니다.

사실, 서버의 IP 주소를 직접 사용하여 프로젝트에 액세스할 수 있습니다. 도메인 이름을 사용하여 액세스할 필요가 없습니다. 하지만 이 방법은 도메인 이름뿐만 아니라 포트 번호도 기억해야 합니다. 너무 많은 프로젝트를 배포하면 실제로 약간 번거롭습니다. 예:

IP:8080IP:8081IP:8082或
域名;8080
域名:8081域名:8082

역방향 프록시를 사용하면 매번 포트 번호를 추가할 필요가 없습니다. 프로젝트에 액세스합니다.

Nginx의 루트 경로를 열고, conf/로 전환하고, nginx.conf 파일을 열고, http 모듈 아래에 서버 모듈을 추가하세요.

여기서 Proxy_pass는 Tomcat 서버 아래의 프로젝트입니다. 8080, 여기서는 8010

server {		#监听的端口号
		listen 80;		#一级域名或二级域名
		server_name	sh.yunxdr.top;		#默认文档
		index index.jsp index.html index.htm;		location / {			proxy_pass http://127.0.0.1:8010/项目名/;
		}
	}

로 변경되었습니다. 참고:

여기서 특별히 주의할 점은 Proxy_pass의 IP 주소인 127.0.0.1 또는 localhost가 현재 서버의 공용 IP를 사용하지 않는다는 점을 기억하세요. , 도메인 이름 확인을 통과한 후에 IP를 프록시로 사용하면 2차 도메인 이름

proxy_pass를 통해 액세스할 수 없기 때문에 여기에서 사용할 수 있습니다.

http://localhost:8010/Tomcat解析的项目名或
http://127.0.0.1:8010/Tomcat解析的项目名

향후 Tomcat 프로젝트를 배포하려면 Linux 서버에 여러 Tomcat을 복사한 다음 Tomcat 기본 포트 번호를 수정하여 두 번째 수준 도메인 이름을 사용하여 다른 프로젝트 이름에 액세스할 수 있습니다.

하지만 하나의 Tomcat 아래에 여러 프로젝트를 배포할 수도 있습니다. 이때 새 프로젝트를 배포할 때마다 Tomcat을 시작하거나 종료하면 이전 프로젝트가 다시 실행되므로 메모리와 CPU가 많이 소모됩니다. 서비스가 더 중단되게 하세요. 프로젝트를 배포하기 전에 이 방법을 사용했습니다.

배포 후 프로젝트에 액세스할 수 없는 경우가 있습니다. 이는 nginx가 기본 파일을 인식하지 못하기 때문일 수 있습니다. 예를 들어,

proxy_pass http://127.0.0.1:8010/项目名/index.jsp;

Nginx 구성을 완료한 후, 저장하고 종료한 후 reload 명령을 실행하여 새로 구성된 파일을 적용하십시오.

./nginx -s reload

이때 실행은 반드시 nginx의 bin 디렉터리로 전환되어야 성공적으로 실행될 수 있습니다. 환경변수를 설정하지 않는 이상 어떤 경로에서든 실행이 가능합니다.

이제 배포가 완료되고 도메인 이름을 통해 Tomcat 아래의 프로젝트에 액세스할 수 있습니다. 프로젝트에 액세스하려면 먼저 두 번째 수준 도메인 이름을 확인해야 합니다

위 내용은 Linux 서버에 JavaWeb을 배포하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 yisu.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제