
1 协议不同
SSH是一种通用的加密协议,主要用于远程登录和文件传输的加密通信。而SSR是基于Shadowsocks协议改进的版本,主要用于代理上网。
2 加密方式不同
SSH支持多种加密算法,包括DES、3DES、AES等,而SSR则采用更加高效的RC4加密算法。
3 代理方式不同
SSH主要是通过端口转发或者SOCKS代理实现代理上网,而SSR则是通过Socks5代理实现。
4 可用性不同
SSH在某些地区或者网络环境下可能会被封锁或者被限制使用,而SSR则由于其轻量级、加密效率高等优点,可以在更多的网络环境中使用。
总的来说,SSH适合用于远程登录和文件传输等场景,而SSR则更适合用于代理上网。但是需要注意的是,无论是SSH还是SSR,都需要注意安全性和合法性,不要用于违法活动。ssr的udp转发可能会失败,这可能是由以下几个原因造成的:
1服务器网络状况不佳:如果服务器的网络状况不佳,ssr可能会出现udp转发失败的情况。
2防火墙限制:如果服务器的防火墙限制了udp协议,那么ssr也可能会出现udp转发失败的情况。
3客户端配置不正确:如果客户端的ssr配置不正确,也会导致udp转发失败。
为了解决这个问题,首先要检查服务器的网络状况、防火墙设置以及客户端的ssr配置是否正确。如果以上检查都没有问题,那么可以尝试更改ssr的udp转发模式,以确保udp转发能够正常工作。缺点:1、SEO问题
2、首屏速度问题
3、消耗性能的问题
优点:
1、更好的 SEO,由于搜索引擎爬虫抓取工具可以直接查看完全渲染的页面
2、首屏渲染速度快
SSR 简单来说就是将页面在服务端渲染完成后在客户端直接展示。
indextemplatehtml
serverjs
vue项目是通过虚拟 DOM来挂载到html的,所以对spa项目,爬虫才会只看到初始结构。虚拟 DOM,最终要通过一定的方法将其转换为真实 DOM。虚拟 DOM 也就是 JS 对象,整个服务端的渲染流程就是通过虚拟 DOM 的编译成完整的html来完成的。
需要通过Webpack打包生成两份bundle文件:
Client Bundle,给浏览器用。和纯Vue前端项目Bundle类似
Server Bundle,供服务端SSR使用,一个json文件
不管项目先前是什么样子,是否是使用vue-cli生成的。都会有这个构建改造过程。在构建改造这里会用到 vue-server-renderer 库,这里要注意的是 vue-server-renderer 版本要与Vue版本一样。
打包之后目录结构
vueconfigjs
indextemplatehtml
打包成客户端和服务器端
启动node服务
github地址: >
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)