在Linux环境下使用Apache部署ASP.NET Core
在前几篇文章中我们一起探讨了如何在Linux环境中安装ASP.NET Core运行时环境及将ASP.NET Core项目部署在Jexus中,这篇文章中我们将探讨如何将ASP.NET Core部署于Apache(阿帕奇)中。
很幸运能够和大家一起学习和探讨ASP.NET Core
本文章运行环境如下:
(1)安装Apache web服务器
运行命令行如下:
sudo yum update -y //更新仓库
sudo yum -y install httpd mod_ssl //安装Apache web服务器
(2)新建一个空ASP.NET Core MVC 项目
运行命令如下:
cd /home //定位到home目录下
dotnet new mvc -o hellomvc
接下来我们对空项目做一些变更以符合当前运行环境
1️⃣ 针对Program.cs类 BuildWebHost方法 添加指定端口运行
2️⃣ 在Startup.cs添加 Microsoft.AspNetCore.HttpOverrides命名空间,并在Configure方法中添加URL中间件
调试当前项目运行是否正常
运行命令如下:
cd /home/hellomvc //定位到指定目录
dotnet run //运行当前项目
运行成功,效果如下:
(3) 生成项目部署文件
运行命令如下:
mkdir -p /var/aspnetcore/hellomvc //新建目录 hellomvc
cd /home/hellomvc/ //定位到指定目录
dotnet publish -o /var/aspnetcore/hellomvc //生成部署文件
因为是空的项目,所以我们把视图文件夹复制到部署目录中
目录结构如下:
运行下面的命令测试发布的程序是否运行正常.
dotnet /var/aspnetcore/hellomvc/hellomvc.dll
(4) 修改Apache 网站配置文件
运行如下命令
cd /etc/httpd/conf.d/ //定位到指定目录
touch hellomvc.conf //新建名为hellomvc.conf的文件
vi hellomvc.conf //打开hellomvc.conf
嗯 改成这样就可以了,.你不会不会抄吧......(我知道命令行很痛苦,所以我千辛万苦装了个图形界面)
查看配置是否正常
sudo service httpd configtest
重新启动Apache
sudo systemctl restart httpd
sudo systemctl enable httpd
OK,现在 Apache 已将位于 http://localhost:80 的请求转发至h ttp://127.0.0.1:7000
(4) 设置 Kestrel 守护
ASP.NET Core运行在Kestrel 上,我们使用systemd来启动和监视Kestrel 。
创建服务定义文件
sudo nano /etc/systemd/system/kestrel-hellomvc.service
注意: 若提示 nano: command not found 则可能nano未安装
执行 yum install nano 命令, 安装nano后再次执行创建服务定义
文件命令.
服务定义文件内容如下:
保存该文件并启用该服务,然后验证它正在运行
systemctl enable kestrel-hellomvc.service
systemctl start kestrel-hellomvc.service
systemctl status kestrel-hellomvc.service
OK,让我们运行浏览器
相关文章:
Linux使用Jexus托管Asp.Net Core应用程序
Linux+.NetCore+Nginx搭建集群
.NET Core+MySql+Nginx 容器化部署
超级简便的容器化部署工具(使用 ASP.NET Core 演示)
原文地址 https://www.cnblogs.com/fanqisoft/p/8671228.html
.NET社区新闻,深度好文,欢迎访问公众号文章汇总 http://www.csharpkit.com
在Linux环境下使用Apache部署ASP.NET Core相关推荐
- 超详细Windows环境下使用Apache部署Django项目教程
目录 超详细Windows环境下使用Apache部署Django项目教程 1.什么是Apache 2.安装并配置Apache 2.1 下载Apache 2.2 解压Apache到文件夹 2.3 配置c ...
- Linux环境下安装及部署Nginx教程
一.安装教程 1.官网下载地址:nginx: download 2.下载教程: 1)选择Stable version版本下载到本地(该版本为Linux版本),下载完成后直接在本地解压后放入linux系 ...
- ubuntu16.4下用jexus部署asp.net core rtm
今天说下ubuntu 下部署asp.net core,不需要安装.net core sdk,自带运行时方式部署,利用jexus服务器转发请求到asp.net core. 1.部署准备环境 vmware ...
- Centos下使用Docker部署asp.net core项目
本文讲述 CentOS 系统 Docker 中部署 asp.net core开源项目 abp 的过程 步骤 1. 拉取 asp.net core 基础镜像 docker pull microsoft/ ...
- Linux环境下搭建Apache服务器(完整版)
Linux下搭建Apache服务器(完整版) 什么是Apache? Apache Licence是著名的非盈利开源组织Apache采用的协议.该协议和BSD类似,同样鼓励代码共享和尊重原作者的著作权, ...
- Linux环境下的Popush部署——张凯
完成情况: 已按照相关部署文档完成了所有任务,包括软件包的安装与配置,以及对各种开发语言的支持,以及gdb的调试功能的支持 遇到的主要问题: 由于从大二以来我基本上所有的开发工作都是在Linux下做的 ...
- win、linux环境下JAVA+GDAL部署,jar包启动,相关描述,问题解决
文章目录 windows环境下JAVA+GDAL 1.GDAL下载 2.GDAL安装(既解压后拷贝) 3.GDAL测试 4.Jar包方式运行 https://www.jianshu.com/p/6bc ...
- Linux环境下BI分布式部署原理和实现
1. 内容概述 分布式部署是将数据分散的存储于多台独立的机器设备上,采用可扩展的系统结构,利用多台存储服务器分担存储负荷. 不但解决了传统集中式存储系统中单存储服务器的瓶颈问题,还提高了系统的可靠性. ...
- linux环境下配置apache ,mysql,php,超简单
#以下需要root权限 #安装配置之前先设置一下防火墙 # ufw是Ubuntu系列发行版自带的类似iptables的防火墙管理软件 # 命令ufw app list列出当前已经集成的应用名称 $: ...
最新文章
- 加速!上海要做人工智能产业“领头雁”
- 机器学习工作流程第一步:如何用Python做数据准备?
- bzoj 4195: [Noi2015]程序自动分析
- java 类方法应用题,java方法使用
- Xah Lee Web 李杀网
- html dd自动换行,为什么我的dd里面的内容没有自动换行呢
- yum mysql5.7位置_CentOS yum 安装 Mysql5.7
- Spring boot actuator端点启用和暴露
- Halcon算子学习:smooth_object_model_3d
- 阿里云Redis混合存储典型场景:如何轻松搭建视频直播间系统
- IllegalStateException: Error reading delta file hdfs://xxx/spark/xx/state/0/11/1.delta
- Activiti中databaseSchemaUpdate属性取值
- WordPress学习笔记(二)插件安装
- 计算机地址栏搜索记录怎么删除,怎么删除网址?如何删除浏览器地址栏的网址历史记录和搜索记录...
- 自学编程的难度如何?
- 今天是愚人节。(Today is April Fools' Day.)网页需要倾斜o(∩_∩)o
- isSelected() 的使用
- ctfshow web入门 SSTI
- C++第一话---->初识C++及命名空间
- Linux 解压缩.xz
热门文章
- 数据库 创建 / 查看/ 删除
- piwik抓取用户交互行为
- keras系列︱Application中五款已训练模型、VGG16框架(Sequential式、Model式)解读(二)...
- easyui 排序实现
- Spark 1.2 发布,开源集群计算系统
- MYSQL性能优化分享(分库分表)
- MVC5 - ASP.NET Identity登录原理 - Claims-based认证和OWIN
- ibatis学习笔记
- .NET6中关于Minimal API的简单使用
- 到底该不该使用存储过程