ASP.NET Core快速入门学习笔记(第1章:介绍与引入)
课程链接:http://video.jessetalk.cn/course/explore
良心课程,大家一起来学习哈!
任务1:课程介绍

任务2:环境安装
下载地址:https://dotnet.microsoft.com/download
或者在 VS2017 安装时勾选 .NET CORE,如果已安装则在菜单栏上点击工具--获取工具和功能(T)

安装完成验证,在左下角 Windows 图标右键启动 Window PowerShell(管理员)
PS C:\WINDOWS\system32> dotnet
任务3:在控制台创建ASP.NET Core应用程序
查看模板:
PS C:\WINDOWS\system32> dotnet new --help
新建一个 ASP.NET Core Web App (Model-View-Controller)
PS D:\jessetalk> mkdir aspdotnetcore
PS D:\jessetalk> cd .\aspdotnetcore\
PS D:\jessetalk\aspdotnetcore> dotnet new mvc
启动项目
PS D:\jessetalk\aspdotnetcore> dotnet run
浏览器访问:https://localhost:5001/

任务4:在VS2017中创建ASP.NET Core应用程序
在 VS2017 中通过 IIS Express 启动

官方推荐在开发和测试的时候通过控制台启动,切换启动方式

启动之后会自动把日志通过控制台输出

任务5:部署到IIS
安装完成后在 iis 的模块下面可以看到

在 iis 中新建一个网站,停掉 Default 的网站

在应用程序池中修改 .NET CLR 版本,不然无法运行

在控制台发布
PS D:\jessetalk\aspdotnetcore> dotnet publish
发布结果

发布到指定目录
PS D:\jessetalk\aspdotnetcore> dotnet publish -o D:\jessetalk\sites\aspdotnetcoredemo
浏览发布的网站


通过 VS2017 发布:
清空该目录下面的内容:D:\jessetalk\sites\aspdotnetcoredemo,刷新浏览器

在 VS2017 中,项目右键--发布,通过文件夹发布

刷新浏览器

任务6:准备CentOS和Nginx环境
下载 vmware workstation
官网:https://www.vmware.com/products/workstation-pro/workstation-pro-evaluation.html
下载 CentOS,选择 Minimal ISO
官网:https://www.centos.org/download/
第一次启动可能出现
VMware与 Device/Credential Guard 不兼容
手动安装组件:
网卡

修改为 yes

重启网卡

安装 ifconfig 命令


得到 ip 地址 192.168.204.128 之后可以通过 putty 连接
putty下载地址:https://putty.org/
使用 putty 连接 cenos 之后可以方便复制粘贴命令
安装 Nginx:https://www.digitalocean.com/community/tutorials/how-to-install-nginx-on-centos-7
安装完成后浏览器访问:192.168.204.128

任务7:在CentOS上安装.NET Core运行时
cenos 安装 asp .net core 环境:[https://www.asp.net/core/overview/aspnet-vnext]https://www.asp.net/core/overview/aspnet-vnext)
安装后验证:
[root@localhost ~]# dotnet
[root@localhost ~]# dotnet --version
[root@localhost ~]# dotnet new --help
[root@localhost ~]# cd /
[root@localhost /]# cd home
[root@localhost home]# mkdir netcore
[root@localhost home]# mkdir helloCore
[root@localhost home]# cd helloCore
[root@localhost helloCore]# dotnet new webapi
[root@localhost helloCore]# dotnet run
通过另一个 putty 连接访问
[root@localhost ~]# curl http://localhost:5000/api/values
任务8:部署到CentOS
下载 FileZilla :https://filezilla-project.org/
通过 ftp 将之前发布在 sites 目录下的文件上传到 cenos 上的 netcore 文件夹里

启动网站
[root@localhost home]# cd netcore
[root@localhost netcore]# ls
appsettings.Development.json aspdotnetcore.pdb web.config
appsettings.json aspdotnetcore.runtimeconfig.json wwwroot
aspdotnetcore.deps.json aspdotnetcore.Views.dll
aspdotnetcore.dll aspdotnetcore.Views.pdb
[root@localhost netcore]# dotnet aspdotnetcore.dll
Hosting environment: Production
Content root path: /home/netcore
Now listening on: http://localhost:5000
Now listening on: https://localhost:5001
Application started. Press Ctrl+C to shut down.
通过另一个 putty 访问
[root@localhost ~]# curl http://localhost:5000
使用 nginx 将 80 端口 映射到 5000 端口 下
[root@localhost ~]# cd /etc/nginx
[root@localhost nginx]# ls
conf.d koi-utf scgi_params
default.d koi-win scgi_params.default
fastcgi.conf mime.types uwsgi_params
fastcgi.conf.default mime.types.default uwsgi_params.default
fastcgi_params nginx.conf win-utf
fastcgi_params.default nginx.conf.default
[root@localhost nginx]# vi nginx.conf
注释掉 nginx.conf 文件中默认 80 的 server
# server {
# listen 80 default_server;
# listen [::]:80 default_server;
# server_name _;
# root /usr/share/nginx/html;
#
# # Load configuration files for the default server block.
# include /etc/nginx/default.d/*.conf;
#
# location / {
# }
#
# error_page 404 /404.html;
# location = /40x.html {
# }
#
# error_page 500 502 503 504 /50x.html;
# location = /50x.html {
# }
# }
nginx.conf 文件中这一句将所有 .conf 文件引入进来
# include /etc/nginx/default.d/*.conf;
修改 netcore.conf
[root@localhost nginx]# cd conf.d
[root@localhost nginx]# vi netcore.conf
netcore.conf
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;
}
}
重启 nginx
[root@localhost conf.d]# nginx -s reload
[root@localhost conf.d]# systemctl restart nginx
浏览器访问:http://192.168.204.128/

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。
欢迎转载、使用、重新发布,但务必保留文章署名 郑子铭 (包含链接: http://www.cnblogs.com/MingsonZheng/ ),不得用于商业目的,基于本文修改后的作品务必以相同的许可发布。
如有任何疑问,请与我联系 (MingsonZheng@outlook.com) 。
ASP.NET Core快速入门学习笔记(第1章:介绍与引入)的更多相关文章
- ASP.NET Core快速入门--学习笔记系列文章索引目录
课程链接:http://video.jessetalk.cn/course/explore 良心课程,大家一起来学习哈! 抓住国庆假期的尾巴完成了此系列课程的学习笔记输出! ASP.NET Core快 ...
- ASP.NET Core快速入门学习笔记(第3章:依赖注入)
课程链接:http://video.jessetalk.cn/course/explore 良心课程,大家一起来学习哈! 任务16:介绍 1.依赖注入概念详解 从UML和软件建模来理解 从单元测试来理 ...
- ASP.NET Core快速入门学习笔记(第2章:配置管理)
课程链接:http://video.jessetalk.cn/course/explore 良心课程,大家一起来学习哈! 任务9:配置介绍 命令行配置 Json文件配置 从配置文件文本到c#对象实例的 ...
- 【ASP.NET Core快速入门】(九) RoutingMiddleware介绍以及MVC引入
前言 前面我们介绍了使用app.Map来配置路由,但是对于一般不是特别大的项目来说,我们不使用Map来进行路由配置. 配置路由 我们首先需要在Startup.cs文件中的ConfigureServic ...
- 【笔记目录2】【jessetalk 】ASP.NET Core快速入门_学习笔记汇总
当前标签: ASP.NET Core快速入门 共2页: 上一页 1 2 任务27:Middleware管道介绍 GASA 2019-02-12 20:07 阅读:15 评论:0 任务26:dotne ...
- 【笔记目录1】【jessetalk 】ASP.NET Core快速入门_学习笔记汇总
当前标签: ASP.NET Core快速入门 共2页: 1 2 下一页 任务50:Identity MVC:DbContextSeed初始化 GASA 2019-03-02 14:09 阅读:16 ...
- ASP.NET Core Web开发学习笔记-1介绍篇
ASP.NET Core Web开发学习笔记-1介绍篇 给大家说声报歉,从2012年个人情感破裂的那一天,本人的51CTO,CnBlogs,Csdn,QQ,Weboo就再也没有更新过.踏实的生活(曾辞 ...
- 一起学ASP.NET Core 2.0学习笔记(二): ef core2.0 及mysql provider 、Fluent API相关配置及迁移
不得不说微软的技术迭代还是很快的,上了微软的船就得跟着她走下去,前文一起学ASP.NET Core 2.0学习笔记(一): CentOS下 .net core2 sdk nginx.superviso ...
- 【原创】SpringBoot & SpringCloud 快速入门学习笔记(完整示例)
[原创]SpringBoot & SpringCloud 快速入门学习笔记(完整示例) 1月前在系统的学习SpringBoot和SpringCloud,同时整理了快速入门示例,方便能针对每个知 ...
随机推荐
- MATLAB模型预测控制(MPC,Model Predictive Control)
模型预测控制是一种基于模型的闭环优化控制策略. 预测控制算法的三要素:内部(预测)模型.参考轨迹.控制算法.现在一般则更清楚地表述为内部(预测)模型.滚动优化.反馈控制. 大量的预测控制权威性文献都无 ...
- 小白月赛13 小A的柱状图 (单调栈)
链接:https://ac.nowcoder.com/acm/contest/549/H来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 262144K,其他语言52428 ...
- 树莓派中QT实现串口通讯
树莓派中QT实现串口通讯 开发平台为QT 此博客QT使用的为WiringPi驱动 我使用的串口调试助手为 cutecom 先简单说一些开发过程中需要注意的问题 Linux 下设备为 tty ,对应在 ...
- eclipse JVM 性能调优
最近因项目存在内存泄漏,故进行大规模的JVM性能调优 , 现把经验做一记录. 一.JVM内存模型及垃圾收集算法 1.根据Java虚拟机规范,JVM将内存划分为: New(年轻代) Tenured(年老 ...
- C# Linq to Entity 多条件 OR查询
技术背景:框架MVC,linq to Entity 需要一定的lambda书写能力 问题:在简单的orm中完成一些简单的增删查改是通过where insert delete update 完成的,但是 ...
- Windows系统CMD下常用命令
命令 功能ASSOC 显示或修改文件扩展名关联.ATTRIB 显示或更改文件属性.BREAK 设置或清除扩展式 CTRL+C 检查.BCDEDIT 设置启动数据库中的属性 ...
- c语言变量及输入输出
scanf: 格式字符串的一般形式:%[*][输入数据宽度][长度] 类型 (其中有方括号[] 的项为任选项.) 各项意义: 1) 类型:表示输入数据的类型,其格式符和意义如下表所示. ...
- Frp基础配置模版
Frp基础配置模版存档,供参考: 不写注释说明了,直接上模板: frps.ini [common] bind_port = 7000 privilege_token = password vhost_ ...
- Oracle 数据库基础知识
depyno 部门编号 部门表 dname 部门名称 location 地址----------------------------------------empno 员工编号 员工表ename 员工 ...
- Python3 指定文件夹下所有文件(包括子目录下的文件)拷贝到目标文件夹下
#!/usr/bin/env python3 # -*- coding:utf8 -*- # @TIME :2018/9/17 9:02 # @Author:dazhan # @File :copyf ...