(下文中服务器均为部署项目的服务器)
环境要求(针对本次项目):
.net core3.1.0 X86
如果有报错需要:
dotnet下载 链接:https://blog.csdn.net/weixin_34021089/article/details/94650136
证书下载链接:https://blog.csdn.net/xtjatswc/article/details/106169090
一、前期准备
a.服务器的IP不能使用自动获取IP地址,只能使用固定IP地址。(可到设置网络适配器中进行修改)
b.IIS安装,打开’启用或关闭Windows功能’,把下图中的都选上点击确定安装。
c.新建文件夹,作为发布以及网站需要读取的文件夹。(eg.E:\wss\publish)
二、发布项目
1、.net
启动项目右击选择发布 ==> 发布到文件夹 == >文件夹选发布的文件夹(eg.E:\wss\publish) == >点击发布ok。
ps:发布生成的文件中有web.config文件并缺少某些文件,可能后续会有其他问题,我这里直接将项目文件夹下面的build文件夹里面所有的文件复制到发布的文件,并删除了web.config文件。
2、Vue
终端输入cnpm run build后,项目文件夹下有dist文件夹,将下面的全部文件复制到发布的文件夹(eg.E:\wss\publish)。
三、添加网站
1、打开IIS管理器,左侧边栏点击打开找到 ‘网站’ 右击 ‘添加网站’ 。
2、网站名称随意,物理路径选择发布的文件夹,即E:\wss\publish。绑定IP选择本机IP地址(可在cmd下输入ipconfig查看),端口随意(我的是8081,为防止冲突),点击确定ok。
3、再在左侧边栏找到应用程序池找到刚才添加的网站,双击修改为 “无托管代码” “集成” 即可。
4、右侧边栏点击浏览网站即可打开网页。
四、问题
1、打开网站报错问题
publish文件夹下有web.config文件:报错500.19,404等错误。
(可参考以下网址解决:https://www.cnblogs.com/coce/p/6852497.html;https://blog.csdn.net/weixin_30568715/article/details/97482226;https://www.cnblogs.com/v587yy/p/11937602.html)
ps.我直接删除了web.config文件,不会报上面那些错误可正常运行,不知道有没有其它影响。。
2、项目问题
跨域问题:我需要服务器可以访问局域网内其它电脑的本地的端口,最开始访问本地电脑的url是http://localhost:8090,会报跨域问题。其实把localhost改为本地电脑的ip地址就可以了。在前端页面中使用window.location.hostname即可获取本地ip。
——-----------------------------------------------------------------
驳回不行,部署到服务器上后location.hostname获取的还是服务器的IP。使用websocket,将本地信息以websocket的方式保存,未使用http协议,不会涉及跨域问题。
3、浏览器安全问题
点击网站,发现后端未响应。F12发现下面错误:
因为浏览器的安全策略,会拒绝私密网站的访问。复制上面链接,新打开页面粘贴链接,进入页面点击高级,点击继续访问即可。