在Linux环境下使用Apache部署ASP.NET Core
很幸运能够和大家一起学习和探讨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 //生成部署文件
因为是空的项目,所以我们把视图文件夹复制到部署目录中
目录结构如下:
运行下面的命令测试发布的程序是否运行正常.
(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,让我们运行浏览器
最新文章
- 防御性编程习惯:求出链表中倒数第 m 个结点的值及其思想的总结
- adminLTE的自动化菜单
- 使用IzPack打包JAVA Web应用程序
- python中获取当前日期在当月是第几天
- REST构架风格介绍:状态表述转移
- Android版多线程下载器核心代码分享
- 9.13noip模拟试题
- 优秀的前端project如何制定一个老师--html学习路径
- Nexus5/6刷 lineageos 过程
- 一个Android上的以滑动揭示的方式显示并切换图片的View
- APNS导致消息丢失和发送效率原因
- css重要知识点
- keep or remove data frame columns in R
- AFNetworking 上传文件
- 20155222 2016-2017-2 《Java程序设计》第10周学习总结
- 开发技巧:高效的使用 Response.Redirect
- 解决 android sdk 下载慢
- cpp中文乱码
- EOJ Monthly 2018.1
- Comparator.comparing比较排序