首先非常感谢阿里云为学生提供的这个使用ECS服务器的机会,对于想要使用ECS服务器的学生来说非常有用。我是来自于计算机科学与技术专业的学生,目前是大四就读,很高兴可以在此分享个人对阿里提供的试用ECS服务器进行经验分享。
我个人一开始是想要租借一个服务器进行项目部署的,毕竟有很多问题只有在项目中才能真正的碰到并解决、积累相关的问题处理经验。比如项目部署后的前后端接口跨域问题以及服务器安全组策略放开问题等比较容易在实际部署中碰到的问题。特别是前端接口请求跨域问题,这一问题在本地开发时几乎不会碰到,因为本地Vue项目可以通过设置代理服务器轻松地在本地开发时解决跨域问题。但开发时设置的代理服务器在部署时是不可使用的,因此需要自己寻找其他合理的解决方案。
通过在网络上搜索可信的相关解决方案资料后得知可以使用jsonp、后端给响应添加cors、nginx设置反向代理等方式解决跨域问题。由于项目已经基本开发完毕,因此使用jsonp作为解决方案的话需要较大的工作量(需要重构接口),因此放弃使用jsonp。由于使用nginx设置反向代理就不需要对后端做出其他修改了,是一种更为方便的选择,因此最后还是选择了使用nginx反向代理来解决前端请求跨域问题。
服务器使用宝塔进行管理和维护,因此修改nginx配置只要在对应的入口修改就行了,非常方便。配置修改如下:
使用nginx开启代理服务器监听80端口,当nginx碰到前端方面的请求就将请求反向代理到前端端口9000,遇到后端api请求就将请求反向代理到后端端口3000,同时加载cors配置项,自动给请求添加cors配置。这样就能解决项目前后端请求跨域的问题了。
另外在开放请求端口时需要在阿里云ECS服务器实例的安全组规则上放开对应的端口访问权限,否则仍无法通过对应的端口进行访问,这点在实机部署时容易忘记。
本次使用服务器部署的是一个轻型的在线网页即时聊天应用,使用该网页应用可以方便的进行注册、登录、在线聊天等功能。部分界面如图下所示:
登录页:
聊天页:
发送图片:
本次ECS服务器使用经验分享以及服务器项目部署心得分享如上所示,感谢您的阅读。