linux下怎样运行asp.net+SqlServer

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux下怎样运行asp.net+SqlServer相关的知识,希望对你有一定的参考价值。

当然一开始是要搭建好linux下运行asp.net的环境,我想知道这个环境搭建好,怎么运行aspx文件,是不是放在var/www文件里就可以了?还有SqlServer里的存储过程是不是直接在mysql里创建就可以了?windows下一些类的Dll文件也可以直接放在linux下吗?

参考技术A 建议如果你需要使用ASP.NET环境那么最好在WINDOWS的平台上,虽然LINUX下面可以模拟运行WIN的程序,但是毕竟那里不是个适合的地方,你可以找相关的语言代替,如php 参考技术B Novell开发的项目mono可以实现asp.net在linux下的运行。
真的要建的话,应该是Novell自家的opensuse更容易吧。
参考技术C 你想说的这种模式,可行性不大, 没有太大的意义. 作实验研究研究可以,但是真的要运行正式系统,太不可靠了.

在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方法 添加指定端口运行

在Linux环境下使用Apache部署ASP.NET Core


    
  2️⃣    在Startup.cs添加 Microsoft.AspNetCore.HttpOverrides命名空间,并在Configure方法中添加URL中间件

在Linux环境下使用Apache部署ASP.NET Core

在Linux环境下使用Apache部署ASP.NET Core


    
调试当前项目运行是否正常

运行命令如下:

cd /home/hellomvc     //定位到指定目录

dotnet run     //运行当前项目

运行成功,效果如下:

在Linux环境下使用Apache部署ASP.NET Core



(3) 生成项目部署文件

运行命令如下:

mkdir -p /var/aspnetcore/hellomvc     //新建目录 hellomvc

cd /home/hellomvc/     //定位到指定目录

dotnet publish -o /var/aspnetcore/hellomvc     //生成部署文件

因为是空的项目,所以我们把视图文件夹复制到部署目录中 

目录结构如下:

在Linux环境下使用Apache部署ASP.NET Core


运行下面的命令测试发布的程序是否运行正常.

 

dotnet /var/aspnetcore/hellomvc/hellomvc.dll



在Linux环境下使用Apache部署ASP.NET Core


(4) 修改Apache 网站配置文件

运行如下命令

  cd /etc/httpd/conf.d/        //定位到指定目录

  touch hellomvc.conf      //新建名为hellomvc.conf的文件

  vi hellomvc.conf     //打开hellomvc.conf


嗯 改成这样就可以了,.你不会不会抄吧......(我知道命令行很痛苦,所以我千辛万苦装了个图形界面)

在Linux环境下使用Apache部署ASP.NET Core


查看配置是否正常

sudo service httpd configtest

在Linux环境下使用Apache部署ASP.NET Core


重新启动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后再次执行创建服务定义
文件命令.

服务定义文件内容如下:


在Linux环境下使用Apache部署ASP.NET Core




保存该文件并启用该服务,然后验证它正在运行

systemctl enable kestrel-hellomvc.service

systemctl start kestrel-hellomvc.service

systemctl status kestrel-hellomvc.service



在Linux环境下使用Apache部署ASP.NET Core


OK,让我们运行浏览器


相关文章: 



以上是关于linux下怎样运行asp.net+SqlServer的主要内容,如果未能解决你的问题,请参考以下文章

启动时在 Linux 下运行 ASP.NET Core 应用程序

在Linux环境下使用Apache部署ASP.NET Core

在Linux上以服务的方式运行ASP.NET Core站点

Centos下安装Jexus.net,上传部署运行asp.net项目

iis怎样才能支持asp文件的浏览及上传?

ASP.NET Core环境并运行 继续跨平台