赞
踩
一、环境
二、vs配置
三、云服务器配置
四、网站的正式发布
五、参考过的前人经验贴
一、环境:
1、Visual Studio2015 Community
2、SQLServer2017Express
3、云服务器:阿里云云服务器
4、服务器上的IIS:Internet InformationServices的缩写,意为互联网信息服务
二、VS配置
VisualStudio 2015 Community上将Web发布成文件系统
1、
2、然后参考下述链接:https://www.2cto.com/kf/201504/392681.html(或者VS2012 + IIS Web 发布(一)——创建发布文件
https://blog.csdn.net/u013067756/article/details/50216031)中关于web发布的内容
最后会生成一个文件夹。
3、其中有个坑,如果希望在web发布到服务器以后还可以使用数据库,最好是右键点击工程后点添加,
之后,通过拉取一个数据的控件,绑定该数据库,即可在Web.config文件里生成一个相对路径的数据库连接字符串,后面在使用到数据库连接字符串时,都通过复制这一串即可。
如果在Web发布后,数据库无法使用,可考虑此方案。
VS端发布,就这么简单,结束了。
三、云服务器配置
(如果不会远程登录服务器。。。。。。那算了,你还是别玩了。百度一下相应服务器的远程连接方式,或者阿里云的服务器可以参考本文第五大点,其他问题。)
1、远程登录服务器:配置IIS,
(如果:阿里云云服务器Windows Server 2012 R2无法安装IIS等组件,参考本文第五大点,其他问题。)
可参考下述链接中步骤一的第2点:https://jingyan.baidu.com/article/e4511cf35573e02b855eaf11.html
安装IIS 组件
1)右键“计算机”—“管理”,打开“服务器管理器”;
2)单击左边菜单栏“角色”调出角色窗口;
3)接着点击“添加角色”,弹出添加“角色向导”;
4)点击“下一步”进入服务器角色选项;
5)勾选“Web服务器(IIS)”,弹出是否添加Web服务器(IIS)所需的功能。点击“添加必需的功能”所回到角色向导
6)点击下一步,到IIS服务器简介。再点击下一步,出现选择web服务器角色选择,默认最初的选项。然后点击安装,等待完成。
7) 最后,选择“开始”—“管理工具”—“服务器管理器”—点击左上角的“角色”—找到“角色服务”—“添加角色服务”。查看以下选项是否都已安装:建议“常见HTTP功能”选项中的全部安装;“应用程序开发”中的安装“ASP.NET”、“.NET扩展性”、“ASP”、“ISAPI扩展”、“ISAPI筛选器”;“健康和诊断”中的安装“HTTP日志记录”和请求“监视”;“安全性”中安装“基本身份验证”、“Windows身份验证”、“摘要式身份验证”、“URL授权”、“请求筛选”;“性能”中安装“静态内容压缩”;“管理工具”中安装:“IIS管理控制台”;“IIS 6管理兼容性”全部安装;“FTP发布服务”有需要也可以安装。发现没有安装的,打勾选中,安装即可。
以上步骤完成后,在IE浏览器地址栏中输入localhost,点击确定,出现下图的界面,则IIS 布置成功。
2、为了能在服务器端也能使用我们前面VS配置中引用的数据库,在服务器安装一个SQLServer2017 Express(最好与编写Web的机器中安装的版本相同),并且!!!!!!安装过程中一定要注意勾选“自定义安装”
最后出现这个安装程序,如果没有,就找到下一图片中的SETUP程序,
打开SETUP以后,按下图顺序点选功能:
然后,疯狂点击下一步,直到功能选择这一项,注意一定要勾选LocalDB,这一个选项,因为在上一步VS的配置中,通过控件绑定生成的连接字符串指定的相对路径都是LocalDB,所以,若没有在服务器也安装这个,则Web在发布到服务器以后,会发现数据库无法使用。
然后,疯狂点击下一步,直到完成。
最后可以通过cmd运行一下命令:sqllocaldb 。结果如下,表示安装成功。
四、网站的正式发布
1、首先先将生成的文件夹复制粘贴(上传)到服务器
2、将vs发布生成的的文件正式部署到服务器的IIS上,可参考下述链接中的前两步,但是。。。。https://blog.csdn.net/u013067756/article/details/50226519
其中第三步应用程序设置:下面提到的几个步骤有些不同,需要改变
1)在高级设置中,托管模式设为Integrated
2)将标识属性改成 “LocalSystem”
3)配置好后在“重新启动”——“浏览网页”:
若成功了,恭喜你,
如果发现
恭喜你,往下走吧
4)设置默认文档,(补充:后来发现默认文档不能设置为default.aspx,会报错)
添加自己在VS中编写网站生成的.aspx文件,如zhuye.aspx,注意,一定要是在生成的那个、复制到服务器的文件夹里面存在的文件的名字。
3、到这里,应该是真的可以恭喜你了,“重新启动”——“浏览网页”,此外如果直接绑定的是80端口,那么现在可以通过服务器的外网IP直接访问打开你的网页啦。
4、端口绑定的问题
此外,如果网页绑定的是其他端口,尤其是一些稀奇古怪不常用的端口号如1314什么的,那很有可能你无法访问你的网页。
或者你想要通过端口,部署多个网页在你的服务器上,然后通过IP:端口号的形式访问,但是80端口只能绑定一个,就必须需要用到其他端口。
那么解决方案如下。
1)打开你的云服务器控制台,以阿里云为例,添加1314端口
网页打开阿里云,登陆控制台,找到本实例安全组——配置规则——入方向——添加安全组规则——按提示设置即可。流程如下图
五、其他问题
1、远程登录阿里云服务器,在你拥有阿里云服务器以后,你就会懂得了,阿里云已经挺详细的教你了。
两种方式:
1)远程桌面连接。2)阿里云控制台网页远程连接。
1)一开始,它会提示你设置安全组规则,以便于使用微软自带的远程桌面去远程连接你的服务器实例。
2)当然,它也提供了一种网页版的连接,在第一次登陆的时候,它会告诉你一个远程登录的密码,要好好记下来,它只会告诉你一次,但是以后每次使用网页版的远程连接的时候,都会要求你输入这个密码。
首次:
>1次:
2. 阿里云云服务器Windows Server 2012 R2无法安装IIS等组件的解决办法
不管安装什么组件,都显示存储空间不足,无法应用命令,错误代码0x80070008。
最终确认是服务器配置过低的原因,因为这个型号是低级别的配置,1核CPU、1G内存带40G系统盘,内存要求没有满足,所以会出现这个错误。
解决办法有两个:
1. 升级配置。
2. 手动增加虚拟内存。打开计算机的属性,在高级设置里面就能添加虚拟内存,我为它添加了4G的虚拟内存。
然后重新安装IIS和.NET3.5等等,就都成功了。
3.然后发现后来,远程连接服务器操作时候,服务器卡到爆炸,其实可以向腾讯云的服务器一样。
然后,一切都水到渠成了。
转载至:https://www.cnblogs.com/superelement/p/7610372.html
六、有感
第一次尝试着发布网站,也是完成学校c#的课程要求,挺难得的机会,也是挺难得的经历,很折磨,也很开心,拼命掉坑与爬坑的过程,感觉学到了很多。
期间参考了很多大佬的经验分享,在此表示感谢。后来,经朋友启发,觉得自己也应该做一下爬坑的记录,一来提醒后人,二来以后忘记了,还可作为一种电子笔记,提醒自己。
参考过的经验贴大致如下,还有很多没有保存书签,也懒得一一罗列了:
1、https://jingyan.baidu.com/article/e4511cf35573e02b855eaf11.html
2、
VS2012 + IIS Web 发布(一)——创建发布文件
https://blog.csdn.net/u013067756/article/details/50216031
VS2012 +IIS Web 发布(三)——网站发布https://blog.csdn.net/u013067756/article/details/50226519
3、
https://www.2cto.com/kf/201504/392681.html
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。