linux下怎样部署dotnet

Posted

tags:

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

在我自己的使用 Ubuntu 的电脑上,我是这样安装的 momo 的:
1、修改 /etc/apt/sources.list , 添加一行:
deb http://security.ubuntu.com/ubuntu precise-security main universe
2、运行 安装命令:
apt-get install mono-complete
这样安装以后,windows .net 下运行的 所以东西都可以在 我的 Linux 下使用了。追问

我Linux用的是红旗

参考技术A linux下安装mono来实现.net支持

Linux CentOS 7 下dotnet core webpai + nginx 部署

参考:https://www.jianshu.com/p/b1f573ca50c7

跟着做到,配置nginx访问dotnet core网站时,报错了。

错误如下所示——

技术图片

 

 

 查看nginx的错误日志: cat /var/log/nginx/error.log | more

技术图片

 

 

 再查看系统的nginx相关的审计日志 cat /var/log/audit/audit.log | grep nginx | grep denied

技术图片

 

 

 bing查找关键字——.netcore webapi nginx permission denied

stackoverflow上找到了可用信息:https://stackoverflow.com/questions/36315637/permission-denied-connecting-to-upstream

终于找到了问题的原因:SELinux

在官网找到了更加详细的描述:

技术图片

 

 

RHEL和CentOS类的服务器,SELinux默认时开启的。

接着下面还有一段描述:

技术图片

 

 

SELinux在RHEL和CentOS系统中,默认的标签是httpd_t,这个安全程序会阻止location代理(英语水平比较烂,大概的意思就是这样)

官网给出了临时关闭SELinux的指令【# semanage permissive -a httpd_t】

当关闭后,再在宿主机上进行访问,发现正常了。

还要注意的是.net core webapi 默认开了https的访问方式,需要在nginx代理中配置这个https的访问地址,否则还是无法访问成功。

技术图片

 

 下面是我的nginx.conf配置

技术图片

 

 当然了,这个SELinux还要不能关闭的,根据官网的说明进行相应的配置即可,这里不多说了。

 

资源:

https://www.nginx.com/blog/using-nginx-plus-with-selinux/

https://www.jianshu.com/p/b1f573ca50c7

 

(完)

 

以上是关于linux下怎样部署dotnet的主要内容,如果未能解决你的问题,请参考以下文章

怎样在Linux环境下安装部署MySQL数据库系统

怎样在Linux环境下安装部署MySQL数据库系统

linux下怎样将目录压缩打包

linux下怎样运行oracle数据库建库脚本

java程序怎样读取linux系统下的文件

怎样部署PXE远程安装服务?