• 목록
  • 아래로
  • 위로
  • 5
  • 0x00000FF
  • 조회 수 2053

안녕하세요. 요 몇달간 ASP.NET Core를 다루면서 쌓였던 지식을 나누어보고자 합니다.

보통 ASP.NET 이라고 하면 윈도우의 IIS에서 굴러가는 그러한 것들을 생각하기 마련입니다. 원래 .NET Framework라는건 윈도우라는 플랫폼에 종속되어 있었고, 그에서 파생된 기술인 ASP.NET 또한 예외는 아니었기 때문이죠.

그러나 2016년, 상황은 변합니다. 마이크로소프트에서 크로스플랫폼을 지원하는 .NET Core 1.0이 발표된거죠. 달리 말해 리눅스에서도 .NET 프로그램을 구동할 수 있게 되었다는 의미입니다.

원래 리눅스에서 .NET Framework를 구동하기 위헤 모노라는 프로젝트가 있었습니다만, 이와 별개로 제작사에서 공식적으로 크로스플랫폼을 지원하는 기술을 내놓아 더욱 쓸모가(?) 있게 된 셈입니다. 아무튼 .NET Core가 등장하면서 자연스럽게 ASP.NET Core 또한 등장하였습니다.

ASP.NET Core는 윈도우 환경 외에도 리눅스, OS X 등 .NET Core 런타임이 구동할 수 있는 곳이라면 어디서든 사용할 수 있습니다. 당장 리눅스 서버 위에 닷넷 런타임 올리고 웹사이트를 올려놓으면 작동된다는 것이지요.


---


이번 강좌로 진행해 볼 프로젝트는 게시판을 포함한 웹사이트입니다. MVC 아키텍쳐와 Razor 문법을 사용하는 cshtml 등 고생산성을 추구하는 여러가지 도구와 함께, ASP.NET Core의 작동 방식을 이해하고 실제 프로그램을 만들어 볼 수 있는 시간이 되었으면 합니다.

---- 강좌에서 사용할 서버 환경은 다음과 같습니다.

OS: CentOS 7.x

웹서버: nginx 1.15.3

DB: MariaDB 10.3

.NET Core 2.1.3


또한, 앞으로 터미널 명령 앞에 $는 루트 권한이 필요 없는 명령, # 은 루트 권한이 필요한 명령임을 나타내는 기호이므로, 명령어 작성시 유의하여 주시기 바랍니다.

---


1. 우선 CentOS를 설치하고, nginx와 mariadb를 설치해줍니다.

# yum -y update

# yum -y install nginx mariadb

# systemctl enable nginx

# systemctl enable mariadb

2. mariadb의 보안 설정을 수행합니다.

# systemctl start mariadb

# mysql_secure_installation

2-1. root 패스워드를 물어봅니다. 아무것도 설정하지 않았으므로 엔터를 누릅니다.

Enter current password for root (enter for none): 

2-2. root 패스워드를 설정할 것인지 물어봅니다. Y 를 입력합니다.

Set root password? [Y/n]

2-3. 새 root 패스워드를 설정해줍니다.

New password:  
Re-enter new password: 

Password updated successfully! 라고 표시되면 성공입니다.

2-4. 나머지는 전부 Y 해줍니다. 그럼 다음 메세지가 표시되며 설정이 완료됩니다.

All done!  If you've completed all of the above steps, your MariaDB
installation should now be secure.
 
Thanks for using MariaDB!

3. .NET SDK를 설치합니다. ASP.NET 홈페이지에 잘 나와있지만, 여기에 대략적으로 옮겨놓으면 다음과 같습니다.

# rpm -Uvh https://packages.microsoft.com/config/rhel/7/packages-microsoft-prod.rpm 

# yum -y update

# yum -y install dotnet-sdk-2.1



여기까지 전부 오류 없이 잘 따라 오셨다면, 작업 환경 구성은 전부 완료되었습니다. 다음 강좌에서는 HTTP2 및 SSL 구성에 대해 다루어 보고, ASP.NET Core MVC에 대해서 조금 짚어보도록 하겠습니다.

그리고 한가지 더 덧붙이자면, 코딩에는 Visual Studio나 Rider 등 .NET에 특화된 IDE를 사용하는 것이 좋지만 이 강좌에서는 vim및 터미널 명령만을 사용하여 작업을 진행할 예정입니다. 굳이 vim이 아니더라도 VS Code나 기타 에디터를 사용하셔도 좋습니다. 모든 소스코드는 https://github.com/0x00000FF/studyforus-aspnet-core-lect 에 공개되어 있으므로 자유롭게 참고하실 수 있습니다.


첫 강좌 따라오시느라 고생 많으셨습니다. 다음 강좌에서 뵙겠습니다.

joyful님 joyful 포함 2명이 추천

추천인 2

작성자
0x00000FF 5 Lv. (0%) 2000/2880EXP

잉여입니다.

댓글 5

NoYeah
profile image
지금까지 iis에서만 asp가 돌아가는 줄 알있어요.

처음알게된 사실이군요.
그렇다면 이제 업무에 있어서 굳이 iis를 사용해야 하는 이유가 많이 줄어들겠군요.
comment menu
2018.09.06. 02:49

신고

"NoYeah님의 댓글"

이 댓글을 신고 하시겠습니까?

0x00000FF 작성자 → NoYeah
profile image
마치 Node.js 같이 사용하는 느낌이라고 해야할까요? 같은 .NET이다보니 코드의 상당수가 호환되기도 하고(세세한 부분은 다르지만) 무엇보다도 크로스 플랫폼이다보니 Windows를 사용하는데 드는 비용도 절감할 수 있어 굉장히 좋은 것 같습니다.
comment menu
2018.09.06. 13:18

신고

"0x00000FF님의 댓글"

이 댓글을 신고 하시겠습니까?

이니스프리
profile image

안녕하세요?

평소에 궁금했지만 잘 모르는 영역이었는데 상세한 설명을 해주셔서 정말 감사합니다 ^^

추천 드리고 갑니다!

comment menu
2018.09.06. 13:17

신고

"이니스프리님의 댓글"

이 댓글을 신고 하시겠습니까?

0x00000FF 작성자 → 이니스프리
profile image
부족하지만 열심히 올려보도록 하겠습니다. 도움 많이 되었으면 좋겠습니다.
comment menu
2018.09.06. 13:18

신고

"0x00000FF님의 댓글"

이 댓글을 신고 하시겠습니까?

title: 에그joyful
profile image
친절한 설명 감사힙니다~~
comment menu
2018.09.09. 08:54

신고

"joyful님의 댓글"

이 댓글을 신고 하시겠습니까?

권한이 없습니다.
번호 제목 글쓴이 날짜 조회 수
공지 시스템 점검 작업 완료 안내 10 마스터 마스터 24.09.05.16:25 2610
공지 [중요] 호스팅 만료와 관련하여 일부 수칙이 변경됩니다. 4 마스터 마스터 23.01.14.02:23 10061
119 [☆운영체제를 만들어보자☆][Chapter 01] 1. 16비트 레지스터 살펴보기 7 image Hygon 18.02.09.01:07 2106
118 [☆운영체제를 만들어보자☆][Chapter 01] 2. 스택이 뭘까? 스택을 만들어보자. [※연습 문제, 요약 추가] 4 Hygon 18.02.14.16:12 1095
117 3.디스코드 봇을 만들어보자 (준비 편) 5 image Doge아시다시피 Doge아시.. 18.02.23.20:57 6593
116 14. 실험실에서 사용하는 기기에 대해 알아보겠츄 8 image 국내산라이츄 국내산라이츄 18.02.25.01:42 5002
115 [☆운영체제를 만들어보자☆][Chapter 01] 3. 다섯 가지 메모리 영역과 간단한 어셈블리 4 Hygon 18.02.25.13:43 1688
114 일반 웹 호스팅과 VPS와 서버 구입의 차이점 14 NoYeah NoYeah 18.03.08.00:25 4398
113 15. bp와 Da츄 image 국내산라이츄 국내산라이츄 18.03.11.02:05 2280
112 DNS가 어떻게 작동하는지 알아봅시다: 1. DNS 질의 절차 따라가 보기 3 abnoeh abnoeh 18.03.27.20:48 5996
111 DNS가 어떻게 작동하는지 알아봅시다: 2. 각 DNS 레코드의 기능 2 abnoeh abnoeh 18.03.30.10:09 1153
110 16. 형질전환입니츄-박테리아 3 image 국내산라이츄 국내산라이츄 18.04.15.00:15 1573
109 정말정말 기본적인 XE 위젯 반응형 적용하기 (라이믹스도 OK!) 7 image 망할윈도우미 망할윈도우미 18.04.29.10:21 1331
108 4. 디스코드 봇을 시작해보자 image Doge아시다시피 Doge아시.. 18.05.08.22:14 4548
107 17. 형질전환입니츄-풀때기 3 image 국내산라이츄 국내산라이츄 18.07.03.23:47 1065
106 18. C3, C4, CAM이츄 3 image 국내산라이츄 국내산라이츄 18.07.22.23:01 1554
105 19. 카리킨에 대해 알아보시츄 9 image 국내산라이츄 국내산라이츄 18.08.26.22:35 1149
[ASP.NET Core를 이용한 웹사이트 만들기] OT. ASP.NET Core란 무엇인가?, 작업 환경 구성 5 0x00000FF 0x00000FF 18.09.06.00:51 2053
103 [ASP.NET Core를 이용한 웹사이트 만들기] 1. 시작하기 3 image 0x00000FF 0x00000FF 18.09.07.19:20 1533
102 아실분들은 아실 미디어위키 웹호스팅상에서의 시각편집기 설치방법(게시판 이동) 4 image 퓨처마츠 퓨처마츠 18.10.03.20:33 1457
101 20. 알레르기츄 3 image 국내산라이츄 국내산라이츄 18.10.03.23:44 1035
100 [번외편 - 구글뉴스] 리뉴얼된 구글뉴스에서 RSS 피드를 생성하는 방법 6 image 이니스프리 이니스프리 18.10.07.17:58 3671