2019独角兽企业重金招聘Python工程师标准>>>

其实铺垫了那么久,终于到重点了,迫不及待了吧,那么我们用重量级工具Visual Studio 2015,安装Update3, 安装DotNetCore.1.0.1-VS2015Tools.Preview2.0.2.exe,打开Visual Studio 2015 点击,创建,修改自寄宿代码,

  var host = new WebHostBuilder().UseKestrel().UseStartup<Startup>().UseUrls("http://*:5000/")    //配置监听端口.Build();host.Run();

编译并发布到开发环境,并上传到服务器/test目录下,执行命令

# cd test
# dotnet WebApplication1.dll
Hosting environment: Production
Content root path: /test
Now listening on: http://*:5000
Application started. Press Ctrl+C to shut down.

访问http://192.168.91.128:5000/ 可以看到运行成功了,Control+Z取消web网站运行,可知我们的网站运行在bash中,那么web网站 可不可以开机启动,并且异常重启吗? 当然可以,这就用上我们我们上节说到的守护进程了,添加文件WebApplication1.conf

[program:WebApplication1]
command=dotnet WebApplication1.dll ; 运行程序的命令
directory=/test ; 命令执行的目录
autorestart=true ; 程序意外退出是否自动重启
stderr_logfile=/var/log/WebApplication1.err.log ; 错误日志文件
stdout_logfile=/var/log/WebApplication1.out.log ; 输出日志文件
environment=ASPNETCORE_ENVIRONMENT=Production ; 进程环境变量
user=root ; 进程执行

上传至/etc/supervisord.d,执行命令

# supervisorctl reload
Restarted supervisord

访问http://192.168.91.128:9001/ 打开/var/log/WebApplication1.err.log,发现 Unhandled Exception: System.AggregateException: One or more errors occurred. (Error -98 EADDRINUSE address already in use) ---> Microsoft.AspNetCore.Server.Kestrel.Internal.Networking.UvException: Error -98 EADDRINUSE address already in use 由此可知此端口已被占用,查看谁占用了此端口

# ss -lnp | grep 5000
tcp    LISTEN     2      128      :::5000                 :::*                   users:(("dotnet",pid=8210,fd=204))
# kill 8210

发现一直kill不掉,执行命令

# systemctl status 8210
● session-1.scope - Session 1 of user rootLoaded: loadedDrop-In: /run/systemd/system/session-1.scope.d└─50-After-systemd-logind\x2eservice.conf, 50-After-systemd-user-sessions\x2eservice.conf, 50-Description.conf, 50-SendSIGHUP.conf, 50-Slice.confActive: active (running) since 六 2016-09-17 05:43:12 CST; 6h agoCGroup: /user.slice/user-0.slice/session-1.scope├─ 2262 sshd: root@pts/0├─ 2266 -bash├─ 8210 dotnet WebApplication1.dll└─12212 systemctl status 8210
# systemctl kill session-1.scope

访问http://192.168.91.128:9001/ 排查文章向上,可以看到取Application started. Press Ctrl+C to shut down, 但是我按了Ctrl+Z,实际上没进行shut down

我们都知道nginx是一个轻量级高性能web反向代理服务器,做缓存和负载均衡都很方便, 下面来安装,执行命令

# yum install -y nginx
# systemctl start nginx.service
# systemctl enable nginx.service
# systemctl status nginx.service
# nginx.service - The nginx HTTP and reverse proxy serverLoaded: loaded (/usr/lib/systemd/system/nginx.service; enabled; vendor preset: disabled)Active: active (running) since 六 2016-09-17 12:59:37 CST; 30s agoMain PID: 4197 (nginx)CGroup: /system.slice/nginx.service├─4197 nginx: master process /usr/sbin/nginx└─4198 nginx: worker process

由此可以看到nginx启动成功了,访问http://192.168.91.128/ 查看nginx配置文件位置

# nginx -V #查看配置参数
--conf-path=/etc/nginx/nginx.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 -t   #测试配置文件
# nginx -s reload  #重新加载配置文件

将nginx添加至SELinux的白名单。

yum install policycoreutils-pythonsudo cat /var/log/audit/audit.log | grep nginx | grep denied | audit2allow -M mynginxsudo semodule -i mynginx.pp

访问http://192.168.91.128/

转载于:https://my.oschina.net/weidedong/blog/747431

.net core入门之web应用相关推荐

  1. ASP.NET Core 入门教程 2、使用ASP.NET Core MVC框架构建Web应用

    原文:ASP.NET Core 入门教程 2.使用ASP.NET Core MVC框架构建Web应用 一.前言 1.本文主要内容 使用dotnet cli创建基于解决方案(sln+csproj)的项目 ...

  2. 合适么?现在学ASP.NET Core入门编程……

    现在都快找不到ASP.NET的培训课程了. 知道我要开课做培训,有同学劝我:"憋讲那什么.NET,讲Java,现在这个火!"我说我Java不熟,"唉呀!C#转Java,分 ...

  3. ASP.NET CORE 入门教程(附源码)

    ASP.NET CORE 入门教程 第一课 基本概念 基本概念 Asp.Net Core Mvc是.NET Core平台下的一种Web应用开发框架 符合Web应用特点 .NET Core跨平台解决方案 ...

  4. 为什么 web 开发人员需要迁移到. NET Core, 并使用 ASP.NET Core MVC 构建 web 和 API

    2018 .NET开发者调查报告: .NET Core 是怎么样的状态,这里我们看到了还有非常多的.net开发人员还在观望,本文给大家一个建议.这仅代表我的个人意见, 我有充分的理由推荐.net 程序 ...

  5. ASP.NET Core 入门教程 8、ASP.NET Core + Entity Framework Core 数据访问入门

    ASP.NET Core 入门教程 8.ASP.NET Core + Entity Framework Core 数据访问入门 原文:ASP.NET Core 入门教程 8.ASP.NET Core ...

  6. ASP.NET Core 入门教程 6、ASP.NET Core MVC 视图布局入门 1

    ASP.NET Core 入门教程 6.ASP.NET Core MVC 视图布局入门 原文:ASP.NET Core 入门教程 6.ASP.NET Core MVC 视图布局入门 一.前言 1.本教 ...

  7. 基于.Net Core开发现代化Web应用程序系列课程和文章

    这个系列课程是Anduin2017在B站上传的: 基于.Net Core开发现代化Web应用程序系列课程第1课之:课程简介 基于.Net Core开发现代化Web应用程序系列课程第2课之:.Net平台 ...

  8. ztree树封装 json实例_小白7天入门PHP Web开发 - Day 6[下](综合)个人博客实例讲解用户数据的存储...

    <小白7天入门PHP Web开发>系列文章,面向单纯善良的完全不懂Web开发编程的入门速成课程,小白们如果感兴趣可以研读此系列文章,也可以连线提问.各路大神有何指教还请指点一二.希望各路大 ...

  9. asp.net core 系列 18 web服务器实现

    一. ASP.NET Core Module 在介绍ASP.NET Core Web实现之前,先来了解下ASP.NET Core Module.该模块是插入 IIS 管道的本机 IIS 模块(本机是指 ...

最新文章

  1. ASP.NET Web Pages – Chart 帮助器简介
  2. oracle crm版本,ORACLE CRM ON DEMAND 19 版
  3. JVM的监控工具之jinfo
  4. 设计模式的理解:构造器模式(Builder Pattern)
  5. [翻译]01-ASP.NET MVC 3介绍
  6. 利用IP组播技术传输视频信息
  7. Qt下QTableWidget的使用
  8. mysql 时间语句【集锦】
  9. 了解java虚拟机mdash;串行回收器(6)
  10. 学习嵌入式单片机需要学习哪些内容?
  11. word中图片转html失真,word中全部图片如何原样保存到本地保持不失真
  12. Required method destroyItem was not overridden
  13. linux文件名排序规则,Linux 上readdir 遍历文件夹按文件名排序
  14. 表单下的botton如何禁止提交
  15. 西门子S7-1200PLC堆栈程序 在使用西门子1200PLC时候发现,系统没有自带的堆栈功能块,不能实现数据的先进先出后进后出功能
  16. 面试必问系列:5、知道多线程吗?谈谈你参与过的多线程实战场景
  17. 树莓派安装迅雷xware的失败经验
  18. Outlook使用RTF格式发信出现Winmail.dat附件事宜
  19. 阿里云学生新用户省钱计划
  20. visual studio 2022安装报错未能安装包“Microsoft.VisualStudio.Debugger.JustInTime.Msi,version=17.1.32112.364,ch

热门文章

  1. unity 全息交互ui_UI向3D投影全息界面的连续发展
  2. 一份 2.5k star 的《React 开发思想纲领》
  3. Silverlight之工具箱使用1
  4. 常用的NSLOG日志打印格式
  5. 开始ubuntu 14.04 的装X模式---终端模式下中文输入,听歌,上irc 开启framebuffer看电影 截图...
  6. 代码段编辑器SnippetEditor 2.1
  7. WEB API:语音识别
  8. python调用api应用接口_Python接口测试之urllib2库应用
  9. 三、SpringBoot-application.properties配置文件和application.yml配置文件
  10. [BZOJ4671]异或图