VS2015+SQL Server 2017+云服务器ECS+IIS:发布一个网站,公网可访问(骚年爬坑记)

全文五步走:

一、环境

二、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)设置默认文档,

添加自己在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
最终确认是服务器配置过低的原因,因为这个型号是低级别的配置,1CPU1G内存带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


猜你喜欢

转载自blog.csdn.net/qq_38772876/article/details/80219659