[친 측] 7 단계 학회 ASP. NET Core 2.0 우 분투 리 눅 스 서버 에 어떻게 발표 / 배치 하고 Nginx 를 설정 하여 도 메 인 네 임 접근 을 실현 합 니까?
ASP. NET Core 2.0 은 어떻게 Ubuntu 서버 에 발표 합 니까?또 어떻게 서버 에 ASP. NET Core 사 이 트 를 사용 하여 지정 한 도 메 인 이름 에 연결 하여 외부 네트워크 사용자 가 방문 할 수 있 도록 설정 합 니까?
순서
STEP 1: 준비 작업
2 단계: 루트 가 아 닌 사용 자 를 만 듭 니 다.
안전 과 관리의 편 의 를 위해 루트 사용 자 를 사용 하지 않 고 루트 가 아 닌 사용 자 를 만 듭 니 다.
adduser myuser # [myuser , ] ,
usermod -aG sudo myuser # sudo ,
exit #
asp.net-core-2-publish-to-linux-ubuntu-server-01.png
사용자 생 성 이 완료 되면 이 사용 자 를 사용 하여 Liux 서버 를 다시 연결 합 니 다.
STEP 3: Linux 서버 업데이트
sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade
sudo reboot
주: 자동 으로 업데이트 하려 면
unattended-upgrades
(아래 명령 은 필요 에 따라 선택) 을 사용 할 수 있 습 니 다.sudo apt-get install unattended-upgrades
sudo dpkg-reconfigure --priority=low unattended-upgrades
STEP 4:. NET Core 설치
Linux 환경 에서 ASP. NET Core 사 이 트 를 실행 하려 면. NET Core 를 설치 하여 실행 해 야 할 때 (물론. NET Core 프로그램의 숙주 도 스스로 실현 할 수 있 습 니 다).
a. 마이크로소프트 제품 KEY 를 신뢰 받 는 것 으로 등록:
curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > microsoft.gpg
sudo mv microsoft.gpg /etc/apt/trusted.gpg.d/microsoft.gpg
b. 필요 한 버 전 호스트 패키지 설정 (Ubuntu 17.04, 기타 linux 버 전 참조https://docs.microsoft.com/en-us/dotnet/core/linux-prerequisites?tabs=netcore2x):
sudo sh -c 'echo "deb [arch=amd64] https://packages.microsoft.com/repos/microsoft-ubuntu-zesty-prod zesty main" > /etc/apt/sources.list.d/dotnetdev.list'
sudo apt-get update
c.. NET Core 설치:
sudo apt-get install dotnet-sdk-2.0.0
d. 실행
dotnet --version
명령 을 실행 하여 설치 성공 여 부 를 검사 합 니 다.dotnet --version
표시: 2.0.0 은 Liux 서버 에. NET Core 2.0.0 버 전이 성공 적 으로 설치 되 었 음 을 나타 낸다.
STEP 5: 예제 프로그램 만 들 기
본 논문 에서 저 희 는. NET Core 의 명령 을 직접 사용 하여 ASP. NET Core 2.0 예제 사이트 응용 프로그램 을 만 들 고 디 렉 터 리 / home / myuser / firstapp 를 만 들 며 명령 을 수행 합 니 다.
dotnet new mvc
이 어 방금 만 든 ASP. NET Core 2.0 사이트 에서 사이트 디 렉 터 리 를 보 냅 니 다. 그래서 저 희 는 먼저 사이트 게시 디 렉 터 리 를 만 듭 니 다. / var / www / firstapp 를 만 들 고 dotnet 발표 명령 을 실행 합 니 다.
dotnet restore
dotnet publish -c release
dotnet 명령 은 ASP. NET Core 2.0 예제 사 이 트 를 디 렉 터 리 에 발표 합 니 다. / home / myuser / firstapp / bin / release / netcoreapp 2.0 / publish / 에서 발 표 된 ASP. NET Core 2.0 사이트 프로그램 을 복사 합 니 다.
scp -r /home/myuser/firstapp/bin/release/netcoreapp2.0/publish/* /var/www/firstapp
STEP 6: 웹 사이트 시작
우 리 는
systemd
를 하나의 서비스 로 만 들 고 시작 할 수 있 도록 설정 dotnet
이 필요 합 니 다.sudo vim /etc/systemd/system/kestrel-mysite.service
sudo systemctl enable kestrel-mysite.service #
sudo systemctl start kestrel-mysite.service #
sudo systemctl status kestrel-mysite.service #
현재, 우리 의 예제 사 이 트 는 5000 포트 를 통 해 서버 에서 방문 할 수 있 으 며, 터미널 에서 wget 명령 을 사용 할 수 있 습 니 다.
wget http://localhost:5000
다음 실행 효 과 를 볼 수 있 습 니 다:
asp.net-core-2-publish-to-linux-ubuntu-server-02.png
우리 의 ASP. NET Core 2.0 사이트 응용 프로그램 이 Liux 서버 에 성공 적 으로 설정 되 었 음 을 설명 합 니 다.지금까지 ASP. NET Core 2.0 이 Liux 에서 so easy 를 실행 하고 있다 고 생각 하지 않 습 니 다!!
그런데 '그런데' 를 봤 을 때 마음 은 어 땠 어 요?
그러나 이 예제 프로그램 은 아직 서버 에서 만 접근 할 수 있 고 외부 네트워크 는 접근 할 수 없습니다.
급 하지 않 습 니 다. 본 고 는 Nginx 를 사용 하여 역방향 대 리 를 하고 외부 네트워크 의 방문 과 도 메 인 이름 의 방문 을 실현 하 는 것 을 공유 합 니 다.
STEP 7: nginx 역방향 에이전트
sudo apt-get install nginx
vim 설정 nginx 서비스 설정 사용 하기
sudo vim /etc/nginx/sites-available/default
nginx 설정 을 다음 설정 으로 바 꿉 니 다:
server {
listen 80;
location / {
proxy_pass http://localhost:5000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection keep-alive;
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}
테스트 설정:
sudo nginx -t
설정 다시 불 러 오기:
sudo nginx -s reload
지금 은 기적 을 볼 때 입 니 다. 브 라 우 저 에 서버 IP 주 소 를 직접 입력 하고 방문 합 니 다. 쿵쿵 쿵 쿵:
asp.net-core-2-publish-to-linux-ubuntu-server-03.png
어 떻 습 니까? 현재 당신 의 ASP. NET Core 2.0 사 이 트 는 인터넷 을 통 해 방문 할 수 있 습 니 다. 만약 당신 의 사이트 가 도 메 인 이름 을 통 해 방문 하 는 것 을 지원 하고 싶다 면 nginx 의 설정 도 매우 간단 합 니 다.
server {
listen 80;
server_name www.your_domain_name.com;
location / {
proxy_pass http://localhost:5000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection keep-alive;
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}
그 중: www. yourdomain_name. com 은 도 메 인 이름 입 니 다. 설정 을 수정 한 후 nginx 설정 을 다시 불 러 옵 니 다.
sudo nginx -s reload
도 메 인 이름 으로 즐겁게 방문 하 세 요.
주: 본 고 는 ASP. NET Core 2.0 이 Ubuntu Linux 서버 에 어떻게 발표 / 배치 되 고 Nginx 를 설정 하여 역방향 프 록 시 를 실현 하 는 지 에 관 한 문 제 를 공유 하 였 습 니 다. 예 를 들 어 서버 의 안전 (경로 표 IP 설정, nginx 의 고급 설정 등) 은 실제 프로젝트 배치 에서 관련 자 료 를 조회 하여 처리 하 십시오.
만약 에 본 고가 당신 에 게 도움 이 된다 고 생각한다 면 칭찬 을 눌 러 서 본 고의 내용 을 이해 하고 배 워 야 하 는 학생 들 에 게 알려 주 십시오. 당신 의 지지 에 감 사 드 립 니 다.
본 고 는 도 향 망 인 에 동시 발표 되 었 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.