linux 网站发asp布,Linux下部署发布Asp.net Core 2.0网站

news/2024/5/9 10:44:01/文章来源:https://blog.csdn.net/weixin_31985599/article/details/116926324

开发环境:

Windows 10 Pro

Visual Studio 2017 Community

Nodejs

服务器:

CentOS Linux release 7.4.1708(Core)

Apache

Nodejs

1. 开发环境准备:

1.1在https://www.visualstudio.com/ 下载安装Visual Studio 2017 Community版本(社区免费版)

选择.Net Core Cross-Platform development 组件进行安装

7ccc9a679f05?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

image.png

7ccc9a679f05?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

image.png

1.2 在https://nodejs.org/ 下载安装Windows 版的 Nodejs

7ccc9a679f05?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

image.png

2.创建Asp.net Core 2.0 Angular应用,这里用自带的模板即可

7ccc9a679f05?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

image.png

7ccc9a679f05?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

image.png

7ccc9a679f05?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

image.png

3.发布应用

点击右键,选择Publish

7ccc9a679f05?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

image.png

选择发布到文件夹

7ccc9a679f05?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

image.png

7ccc9a679f05?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

image.png

这里要注意的是如果发布失败,重启应该可以解决。

同时记下文件夹

c:/users/admin/source/repos/AngularApp/AngularApp/bin/Release/PublishOutput

4.Linux部署

先用Bitvise 连接已经部署好CentOS 7的服务器,Bitvise 默认会打开一个Terminal 和一个用于文件传输的SFTP窗口

7ccc9a679f05?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

image.png

7ccc9a679f05?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

image.png

4.1 安装Dotnet

7ccc9a679f05?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

image.png

根据这里的说明安装https://www.microsoft.com/net/learn/get-started/linuxcentos

7ccc9a679f05?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

image.png

4.1.0 先用root登陆

sudo su -

![image.png](http://upload-images.jianshu.io/upload_images/5258872-ffddc2f6e2140aa5.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

4.1.1 添加.net源

sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc

~~~bash

sudo sh -c 'echo -e "[packages-microsoft-com-prod]\nname=packages-microsoft-com-prod \nbaseurl= https://packages.microsoft.com/yumrepos/microsoft-rhel7.3-prod\nenabled=1\ngpgcheck=1\ngpgkey=https://packages.microsoft.com/keys/microsoft.asc" > /etc/yum.repos.d/dotnetdev.repo'

7ccc9a679f05?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

image.png

4.1.2 安装.net core 2.0 SDK

sudo yum update

7ccc9a679f05?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

image.png

中间有个确认,这里要等很久。。。

sudo yum install libunwind libicu

安装SDK

sudo yum install dotnet-sdk-2.1.3

4.2 安装Nodejs

sudo yum install epel-release

sudo yum install nodejs

sudo yum install npm

看下版本号

node --version

4.3 安装Apache

sudo yum update -y

sudo yum -y install httpd mod_ssl

查看apache路径

whereis httpd

4.4 配置环境

4.4.1 创建配置文件 AngularApp.conf

7ccc9a679f05?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

image.png

7ccc9a679f05?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

image.png

4.4.2 上传配置文件

4.4.2.1 找到Apache 配置文件路径/etc/httpd

7ccc9a679f05?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

image.png

4.4.4.2 打开Bitvise 的SFTP从本地 AngularApp.conf 到服务器的tmp文件夹中

7ccc9a679f05?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

image.png

4.4.4.3 打开Terminal用命令行把tmp文件夹中的AngularApp.conf移动到Apache文件夹中

mv /tmp/AngularApp.conf /etc/httpd/conf.d

4.4.3 上传之前打包好的.Net Core 2.0应用AngularApp

4.4.3.1 点击右键,使用SFTP在tmp文件夹里创建一个AngularApp文件夹,把发布的文件拖拽到AngularApp文件夹里

7ccc9a679f05?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

image.png

4.4.3.2 把AngularApp移动到/var/www目录里

mv /tmp/AngularApp /var/www

7ccc9a679f05?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

image.png

如果看不到可以点下刷新

7ccc9a679f05?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

image.png

4.4.4 创建一个服务文件,用来启动.Net Core 2.0的应用,另存为kestrel-AngularApp.service

同样打开记事本,创建一个新的文件[图片上传中...(image.png-520d41-1514966781776-0)]

[Unit]

Description=Example .NET Web API Application running on CentOS 7

[Service]

WorkingDirectory=/var/www/AngularApp

ExecStart=/usr/bin/dotnet /var/www/AngularApp/AngularApp.dll

Restart=always

# Restart service after 10 seconds if dotnet service crashes

RestartSec=10

SyslogIdentifier=dotnet-example

User=apache

Environment=ASPNETCORE_ENVIRONMENT=Production

[Install]

WantedBy=multi-user.target

7ccc9a679f05?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

image.png

7ccc9a679f05?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

image.png

4.4.3 上传服务文件 到 /etc/systemd/system/

4.4.3.1 因为SFTP没权限,还是先放到/tmp文件夹下

7ccc9a679f05?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

image.png

4.4.3.2 移动到系统文件夹

mv /tmp/kestrel-AngularApp.service /etc/systemd/system/

7ccc9a679f05?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

image.png

4.5 启动应用

4.5.1 配置 Apache 启动

sudo service httpd configtest

4.5.2 重启Apache

sudo systemctl restart httpd

sudo systemctl enable httpd

4.5.3 启用服务

systemctl enable kestrel-AngularApp.service

4.5.4 打开并查看服务状态

systemctl start kestrel-AngularApp.service

systemctl status kestrel-AngularApp.service

7ccc9a679f05?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

image.png

4.5.5 安装防火墙firewalld并打开80端口

sudo yum install firewalld -y

sudo firewall-cmd --add-port=80/tcp --permanent

sudo firewall-cmd --add-port=443/tcp --permanent

4.6 SSL 配置

sudo yum install mod_ssl

sudo yum install mod_rewrite

修改AngularApp.conf 加入ssl端口配置

RewriteEngine On

RewriteCond %{HTTPS} !=on

RewriteRule ^/?(.*) https://%{SERVER_NAME}/ [R,L]

ProxyPreserveHost On

ProxyPass / http://127.0.0.1:5000/

ProxyPassReverse / http://127.0.0.1:5000/

ErrorLog /var/log/httpd/hellomvc-error.log

CustomLog /var/log/httpd/hellomvc-access.log common

SSLEngine on

SSLProtocol all -SSLv2

SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:!RC4+RSA:+HIGH:+MEDIUM:!LOW:!RC4

SSLCertificateFile /etc/pki/tls/certs/localhost.crt

SSLCertificateKeyFile /etc/pki/tls/private/localhost.key

重启Apache服务

sudo service httpd configtest

sudo systemctl restart httpd

5. 从浏览器打开服务器的地址,就可以看到AngularApp已经成功部署完毕。

7ccc9a679f05?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

image.png

其他设置可以参考官网

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_796939.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

无脑无负担网站架构-- Application Request Route的一些应用

首先作为一个.net 程序员,多数情况你懒的整什么架构啊、框架啊、还有那命令行的linux,别说linux也有桌面,那个桌面用起来更让人抓狂,一直不明白居然有人说喜欢上linux的命令行,装B还是SB呢?好把不管是生活所…

4月上旬国内网站流量:360安全中心超淘宝居第三

IDC评述网(idcps.com)04月29日报道:根据中国互联网协会-中国网站排名公布的最新数据显示,截至2014年4月16日,国内网站独立访问量排名前五的是:百度、腾讯网、360安全中心、淘宝网和新浪网,如下图…

Django博客开发之网站发布(Linux环境下安装Python环境)

Linux环境下编译安装Python3 我们今天学习如何将Django博客项目部署到Linux服务器上,我们此次选择Linux的系统是centos7,如何安装centos7我就不在这里进行演示了,如果不会的请自行百度如何安装centos7。镜像下载地址:https://www.…

python模拟登录我爱我家网站

什么是模拟登陆? 模拟登陆:用脚本模拟用户行为实现账户登陆。 模拟登陆分类 暴力模拟登陆:忽略web设计原理,忽略登陆需求,硬性的将cookie取出加载爬虫当中进行登录。 原理分析模拟登陆: 根据网站源码和…

如何使用Apache的ab工具进行网站性能测试

2019独角兽企业重金招聘Python工程师标准>>> 1.打开Apache服务器的安装路径,在bin目录中有一个ab.exe的可执行程序,就是我们要介绍的压力测试工具。 2.在Windows系统的命令行下,进入ab.exe程序所在目录,执行ab.exe程序…

京东 你访问的页面需要验证证书_SSL证书对于SEO排名来说有什么意义?vTrus这样说…...

SSL(安全套接字层)证书作为网站的一种安全措施,是安装在Web服务器上的小型数据文件。SSL会激活一个挂锁,以允许从Web服务器到浏览器的安全连接。HTTPS页面将获得SEO提升在Google不断变化的SEO排名算法中,最新的算法之一是将使用SSL证书的网站…

php培训网站怎么样,九江php培训怎么样(PHP是什么)

九江php培训怎么样,当你比较纠结选择江西PHP培训,应该留下看看:php培训后的发展前景,php培训的注意事项,怎么运行PHP,php常用框架有哪些,php乱码怎么解决,PHP是什么php培训后的发展前…

SEO最近的一份成绩单

总觉得可以做的更好的。大神看到了勿喷..转载于:https://blog.51cto.com/daoxin/1639876

seo优化与html,HTML SEO 优化技巧

分析个人能力的时候发现自己对HTML 的SEO优化了解的还不是很多,所以花了些时间学习了一下,并且和大家分享一下所学内容与总结。1. 标签优化1. Title 标签title标签是搜索引擎抓取的重点,搜索引擎抓取title标签作为搜索结果的展示信息。title标…

linux网站程序,建议收藏99%的程序员都爱的网站

导读作为程序员,你每天接触到的比较多的网站或者平时比较喜欢浏览的网站有哪些?今天给大家介绍9个99%的程序员都爱的网站,建议收藏起来。如果你有什么其他有用的网站,也可以评论区推荐给大家。1、GitHubhttps://github.com/大名鼎…

元旦用SpringBoot撸了个博客网站送给大家

说在前面掘金是曾经我觉得最适合写技术文章的社区,因为可以带二维码引流。我觉得这想法没问题,可是最近发现掘金也凉了,写文章连个公众号二维码都不给带,这让我觉得被白嫖了。而且最近发现我更加偏向于写纯粹的技术文章&#xff0…

和朋友合伙搞了个网站

做IT的可能都有类似的操作,总有一些朋友会找我们做这做那,或者是合伙做个网站什么的,这不,今年年初深圳那边就有个关系很铁的老哥找我搞一个租房网站,他简单说明了下他的想法,我大概罗列了能不能做深圳本地…

使用C#的HttpWebRequest模拟登陆网站

原文:使用C#的HttpWebRequest模拟登陆网站这篇文章是有关模拟登录网站方面的。 实现步骤; 启用一个web会话 发送模拟数据请求(POST或者GET) 获取会话的CooKie 并根据该CooKie继续访问登录后的页面,获取后续访问的页面数据。我们以…

[网站摘录]TOP小区流程分析

原文地址:http://www.mscbsc.com/bbs/thread-656686-1-1.html#73转载于:https://blog.51cto.com/10237569/1840620

Dapper:The member of type SeoTKD cannot be used as a parameter Value

异常汇总&#xff1a;http://www.cnblogs.com/dunitian/p/4523006.html#dapper 上次说了一下Dapper的扩展Dapper.Contrib http://www.cnblogs.com/dunitian/p/5710382.html 以及这个异常&#xff1a;Dapper.Contrib&#xff1a;GetAsync<T> only supports an entity with…

IIs 网站应用程序与虚拟目录的区别及高级应用说明(文件分布式存储方案)【转】...

对于IIS网站&#xff0c;大伙用的比较多&#xff0c;就不啰嗦了。 今天和说说大伙比较少使用的"IIS应用程序”和虚拟目录的区别及高级应用场景&#xff0c;文件分布式存储方案。 1&#xff1a;IIS网站&#xff1a; 一个网站&#xff0c;基本就是一个站点&#xff0c;绑定N…

你通晓SaaS吗?不自行搭建门户网站的三大理由

就算你创业家们已经对SaaS动了心&#xff0c;也要关注SalientGroup公司发布的新研究结果&#xff1a; 1、SaaS在获得资金。近50%的基于SaaS的初创公司成功地融到了资金――融资成功率之高是其他行业领域无法企及的。 2、基于SaaS的企业在增长。SaaS市场的增长率比软件市场快3倍…

asp.net 网站 发布时 去掉.cs文件

VS2013在WIN8下扁平的UI和我今天锈垢的大脑&#xff0c;让找这个设置找了好半天&#xff01;&#xff01;&#xff01;OK&#xff0c;言归正传。在要发布的网站上右键&#xff0c;选择"发布网站"。在发布窗口中&#xff0c;会让你选择一个发布配置文件&#xff0c;没…

钓鱼网站飙升居然因为这个原因...

2019独角兽企业重金招聘Python工程师标准>>> 2017年注定是个不太平的年份&#xff0c;钓鱼网站的数量已经达到了巅峰状态…… 虽然各大主流浏览器已经推进网站HTTPS的部署&#xff0c;但也正是因为这个原因&#xff0c;一部人认为只要安装了SSL证书就可以保证网站的…

凡客诚品官方网站的前端改进建议

打开http://www.vancl.com/发现采用的Asp.net&#xff0c;这点我感到很欣慰&#xff0c;毕竟国内采用.net技术体系的优秀网站少之又少。好奇之余右键-查看源码&#xff0c;却不由得皱起眉头&#xff0c;在此提几个可以让网站更快的前端建议&#xff1a; 01.合并头部的script为一…